gpt4 book ai didi

java - Struts 2 中的注解支持

转载 作者:行者123 更新时间:2023-12-04 07:08:11 24 4
gpt4 key购买 nike

我目前正在评估 Struts 2。官方文档包含一个带有以下 Java 和 JSP 代码的 HelloWorld 示例:

java

import com.opensymphony.xwork2.ActionSupport;

public class HelloWorld extends ActionSupport {

public static final String MESSAGE = "Struts is up and running ...";

public String execute() throws Exception {
setMessage(MESSAGE);
return SUCCESS;
}

private String message;

public void setMessage(String message){
this.message = message;
}

public String getMessage() {
return message;
}
}

JSP
<%@ taglib prefix="s" uri="/struts-tags" %>

<html>
<head>
<title>Hello World!</title>
</head>
<body>
<h2><s:property value="message" /></h2>
</body>
</html>

该示例使用以下 XML 文件来指定此操作的 URL,并将操作和 View 绑定(bind)在一起
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="tutorial" extends="struts-default">
<action name="HelloWorld" class="tutorial.HelloWorld">
<result>/HelloWorld.jsp</result>
</action>
</package>
</struts>

我的问题(最后)是:这真的是 Struts2 的最新技术吗?我一直认为 XML 配置和子类化特定基类 (ActionSupport) 的必要性已被弃用。我认为注释可以用于配置。

几个更具体的问题:
  • 是否需要为每种请求类型设置一个 Action 类,或者是否可以在一个 eaction 中定义多个方法,每个方法可以处理不同的请求?
  • 是否有必要为要提供给 View 的数据成员(上例中的“消息”)定义公共(public) getter 和 setter?

  • 如果这是 Struts2 中的最新技术,那么它似乎对 Struts1 没有太大的改进,但我怀疑这只是一个不好的例子。

    谢谢,
    大学教师

    最佳答案

    一些答案(不是全部):

  • 您可以将多个方法添加到同一个 Action 类。每个都需要返回一个字符串。
  • 我认为需要公共(public) getter 和 setter。
  • 提供的基类只定义了某些有用的值,例如常量 SUCCESS。

  • 您可以通过“零配置”功能( zero conf doc)使用注释

    关于java - Struts 2 中的注解支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/786840/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com