Java 如何在Struts 2中动态传递带有动作名称的参数
我想用一些参数调用action类,但我能够做到这一点。 请建议我在应用程序中使用映射Java 如何在Struts 2中动态传递带有动作名称的参数,java,parameters,struts2,Java,Parameters,Struts2,我想用一些参数调用action类,但我能够做到这一点。 请建议我在应用程序中使用映射struts.xml文件传递参数 我正在应用程序中使用Struts2框架。我的Struts文件操作映射如下: {1} 视图/CreateShBehaviorView.jsp / 和用于调用action类的url: http://localhost:8080/pro/createSHBehaviour/123 这里createshbehavior是createshbehavior动作的方法类: 公共类Cr
struts.xml
文件传递参数
我正在应用程序中使用Struts2框架。我的Struts文件操作映射如下:
{1}
视图/CreateShBehaviorView.jsp
/
和用于调用action类的url:
http://localhost:8080/pro/createSHBehaviour/123
这里createshbehavior
是createshbehavior动作的方法
类:
公共类CreateShBehaviorAction扩展了ActionSupport实现
SessionAware,可参数化{
/**
*
*/
私有静态最终长serialVersionUID=1L;
私有SessionMap SessionMap=null;
private Map params=new HashMap();
公共字符串execute(){
System.out.println(“param1=”+this.params.get(“param1”);
sessionMap=(sessionMap)ActionContext.getContext()
.getSession();
sessionMap.put(“idsofhumans”,“hhhh”);
sessionMap.put(“修复行为模式”,true);
回报行动。成功;
}
公共无效设置会话(映射){
sessionMap=(sessionMap)映射;
}
@凌驾
public void addParam(字符串键、字符串值){
//TODO自动生成的方法存根
this.params.put(键、值);
}
@凌驾
公共映射getParams(){
//TODO自动生成的方法存根
返回此.params;
}
@凌驾
公共void setParams(映射参数){
//TODO自动生成的方法存根
this.params=params;
}
}
我今天对此很累,请给我一些建议来解决这个问题。
谢谢使用
ParameterAware
而不是Parametrizable
或直接从操作上下文获取参数
Map<String, Object[]> parameters = ActionContext.getContext().getParameters();
Map parameters=ActionContext.getContext().getParameters();