在 Struts 文档中,它说:
另一种常见的工作流程策略是首先使用替代方法(例如输入)渲染页面,然后将其提交回默认执行方法。
仅使用注释如何做到这一点?好像只调用了
execute()
方法。
在文档中据说可以使用像
input
这样的替代方法来渲染页面。这意味着当您在页面上提交表单时,它可以返回 input
结果。通常,如果验证失败或hasErrors
,它会在验证过程中自动发生。然后您可以将表单提交回默认操作的 execute
方法。您不需要在操作配置中指定 method
。此外,如果您没有在 action
标签中指定 form
属性,则将执行用于渲染页面的相同操作。
配置操作,您可以在使用
success
方法渲染页面时使用相同的页面来获取 GET
结果,并在请求 input
方法时使用 POST
。
要使用注释来配置操作映射,您可以使用Convention Plugin。
另请注意,要将类方法映射到操作,您应该将
@Action
注释直接放在该方法上,而不是放在类上。
您可以在此处找到更详细的解释和文档。
@Namespace("/") public class ProductAction extends ActionSupport { public String execute() { return SUCCESS; } @Action(value="product", results=@Result(location="/product-list.jsp") ) public String search() { return SUCCESS; } }
注意,方法
未映射,因此不会执行。如果您需要执行该方法,您应该创建到它的映射。为此,您可以在类或方法上放置注释execute
。execute