关于网友提出的“ struts2中同时使用属性的get/set方法和model对象冲突的问题”问题疑问,本网通过在网上对“ struts2中同时使用属性的get/set方法和model对象冲突的问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: struts2中同时使用属性的get/set方法和model对象冲突的问题描述:
strutsjavastruts2.0javaee
public class UserAction implements ModelDriven(){
private String name;
private User model;
pubic User getModel(){
return this.model;
}
private void setName(String name){
this.name=name;
}
private String getName(){
return name;
}
public String saveUser() throws Exception{
System.out.println(name);//这里输出的值是null
System.out.println(this.model.getName());//这里输出的值正常
}
}
以上代码如果将模型驱动接口去掉之后则在saveUser方法中直接System.out.println(name);可以直接获取到值
另外如果使用了paramsPrepareParamsStack拦截器栈的话则通过属性和model对象都能够获取到值,求大神解释为什么
解决方案1:
这个我还真没试过,之前用struts 无论是参数封装,还是ognl封装,都没考虑过 名称一样的情况
现在的解决办法:如果你能改动参数名称的话,建议别叫name, 改成userName或者其他