我应该在哪里提供参数的getter和setter在Struts2



我是Struts2的新手,我刚刚意识到,每当我通过JSP页面的形式调用操作类时,我需要为所调用的操作类中的所有参数提供getter和setter,以便访问参数,如下面的操作类所示:

public class LoginAction extends ActionSupport {
    private String userName;
    private String password;
    public String execute {
    System.out.println(this.userName+" "+this.password);
    return "success";
    }
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
}

然而,我也有一个POJO类的用户有相同的2个属性及其getter和setter。是否有一种方法可以在我的动作类中使用这些getter/setter ?现在我在POJO和动作类中都有getter和setter。谁能帮我消除这种冗余吗?

动作bean放在值堆栈的顶部,参数直接通过名称访问,即userName, password。Struts2使用OGNL来访问值堆栈中的对象,因此如果您将POJO放置到值堆栈中,则可以通过OGNL访问。例如

public class LoginAction extends ActionSupport {
   private User user;
   public User getUser() {
        return user;
    }
    public void setUser(User user) {
        this.user = user;
    }
}

应使用参数名称user.userNameuser.password

相关内容

  • 没有找到相关文章

最新更新