struts2之通过 struts.xml 将属性传递给 struts2 操作

jirigala 阅读:75 2025-05-04 20:05:19 评论:0

我如何将一个属性传递到我的 struts2 java 操作中,告诉我该操作是从一个 URL 路径/操作映射还是另一个调用?

我想我可以在 struts.xml 中为两个 Action 映射添加一些东西,但使用相同的 java Action 并只是将标志传递到 Action 中。

请您参考如下方法:

您需要使用 <param/>标签。我经常为处理添加和编辑实体的操作执行此操作,因为字段、验证和诸如此类的东西实际上是相同的。这是一个例子。

struts.xml

<action name="users/add" class="AddEditUserAction"> 
  <param name="edit">false</param> 
  <result name="input">/WEB-INF/jsp/addEditUser.jsp</result> 
</action> 
 
<action name="users/{username}/edit" class="AddEditUserAction"> 
  <param name="edit">true</param> 
  <result name="input">/WEB-INF/jsp/addEditUser.jsp</result> 
</action> 

行动

public class AddEditUserAction { 
  private boolean isEdit; 
 
  // this is called by the struts.xml to set the value 
  public void setEdit(final boolean edit) { 
    isEdit = edit; 
  } 
} 

为了让它工作,你需要在你的堆栈中有静态参数拦截器(它默认包含)。


标签:Struts2
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号