我应该如何在Struts2中构建?

时间:2013-03-02 09:10:44

标签: database-design data-structures struts2

我刚刚使用过Struts2,所以我有很多问题。

在JSP上:<s:text name="account"/>

关于行动类:

    public String getAccount() {
            return account;
    }

    public void setAccount(String account) {
    this.account = account;
    }

1 /帐户是学生的一个属性。当我提交给服务器时,getter和setter是否会接收并将信息发送给客户端?

2 /我想插入一个有两个属性的新学生:帐户和电子邮件。插入完成后,用户将被重定向到显示学生表的jsp。    如果动作类想要从jsp获取帐户和电子邮件参数,那么动作类需要两个字段帐户,带有getter和setter的电子邮件吗?如果需要,Student类是否只包含gettter和setter方法?

实际上,它有4个字段。 行动类:

public class TraineeLogin {
      private String account;
      private String fName;
      private String lName;
      private String email;
      private Vector<Trainee> listTrainee; //Should I use 4 lists or 1 list to contain infomation?

      public String execute(){
              DBTraineesManager manager  = new DBTraineesManager();
              ...//valid
              manager.addOrUpdate(account, fName, lName, email);
              return "success";
          }

        public String getAccount() {
            return account;
        }
        public void setAccount(String account) {
            this.account = account;
        }
        public String getfName() {
            return fName;
        }
        public void setfName(String fName) {
            this.fName = fName;
        }
        public String getlName() {
            return lName;
        }
        public void setlName(String lName) {
            this.lName = lName;
        }
        public String getEmail() {
            return email;
        }
        public void setEmail(String email) {
            this.email = email;
        }
        public Vector<Trainee> getListTrainee() {
            return listTrainee;
        }
        public void setListTrainee(Vector<Trainee> listTrainee) {
            this.listTrainee = listTrainee;
        }


        }

实体类:

public class Trainee {
    private String account;
    private String fName;
    private String lName;
    private String email;

    constructor();   
    getter();     //That same as DBTraineesManager class.
    setter();     // The code is same. It wasted time.
}

3 /我应该使用两个列表:listAccount和listEmail来显示表吗?或者我应该使用listStudent?

4 /维护数据库在Strut2中查询和更新对象的最佳结构是什么?

1 个答案:

答案 0 :(得分:2)

首先,您不需要在两个课程中都放置 getter和Setter 。你可以把它放在动作类或单独的Bean类中,它接受表单输入。 在我看来,你应该只使用一个列表来管理所有属性。

问题的第三部分是关于数据库设计模式。最好遵循 DAO 设计模式

http://en.wikipedia.org/wiki/Data_access_object

http://www.tutorials4u.net/struts2-tutorial/struts2_crud_example.html