以使用者名稱註冊來分析三種Action擷取資料的方式,三種action

來源:互聯網
上載者:User

以使用者名稱註冊來分析三種Action擷取資料的方式,三種action

1.注入屬性


直接注入屬性:

 1     public String userName; 2      3  4     public String getUserName() { 5         return userName; 6     } 7  8  9     public void setUserName(String userName) {10         this.userName = userName;11     }12 13 14     @Override15     public String execute() throws Exception {16         // TODO Auto-generated method stub17         18         User user = new User();19         user.setUserName(userName);//在這裡需要將username接收到並且去使用。20         UserDAO dao = new UserDAO();21         HttpServletResponse response= ServletActionContext.getResponse();22         PrintWriter out = response.getWriter();23         if(dao.checkExists(user))24         {25             out.print("1");26         }27         else28         {29             out.print("0");30         }31         return null;32     }

 


2.Domain Model 這是一般常用的方式

這裡就不重複說明,

3.ModelDriven

第三種方法不常用,只需要瞭解;

其過程分為4個步驟:
 (1)action實現ModelDriven<User>介面
  (2) 添加抽象方法
 (3)定義並初始化一個模型
     User user=new User();
 (4)產生setter和getter

 1 public class CheckUserAction extends ActionSupport implements ModelDriven<User>{ 2     private User user = new User(); 3     public User getUser() { 4         return user; 5     } 6  7     public void setUser(User user) { 8         this.user = user; 9     }10 11     @Override12     public String execute() throws Exception {13         // TODO Auto-generated method stub14         15         16         UserDAO dao = new UserDAO();17         HttpServletResponse response= ServletActionContext.getResponse();18         PrintWriter out = response.getWriter();19         if(dao.checkExists(user))20         {21             out.print("1");22         }23         else24         {25             out.print("0");26         }27         return null;28     }29 30     @Override31     public User getModel() {32         // TODO Auto-generated method stub33         return user;34     }35     

注意:在使用方法1和3的時候前端及jsp代碼部分無需需改,因為是直接調用的userName屬性。

方法2需要將jquery中的username變為,user.username。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.