Struts2 使用Domain Model接收参数

Domain Model 域模型,包含着项目里真正证存在的概念。如:性名,年龄

1。建一个域模型model 要写get和set方法:

Java代码 复制代码 收藏代码
  1. package com.hugui.user.model;
  2. public class User {
  3. private String name;
  4. private int age;
  5. public String getName() {
  6. return name;
  7. }
  8. public void setName(String name) {
  9. this.name = name;
  10. }
  11. public int getAge() {
  12. return age;
  13. }
  14. public void setAge(int age) {
  15. this.age = age;
  16. }
  17. }
package com.hugui.user.model;

public class User {
private String name;
private int age;
public String getName() {
   return name;
}
public void setName(String name) {
   this.name = name;
}
public int getAge() {
   return age;
}
public void setAge(int age) {
   this.age = age;
}
}





1。1 也可以建一DTO对像;不用写get 和set方法。与下面Action中对应

Java代码 复制代码 收藏代码
  1. package com.hugui.user.dto;
  2. public class UserDTO {
  3. private String name;
  4. private String password;
  5. private String confirmingPassword;
  6. }
package com.hugui.user.dto;

public class UserDTO {
private String name;
private String password;
private String confirmingPassword;
}




2.建一个Action.

Java代码 复制代码 收藏代码
  1. package com.hugui.user.action;
  2. import com.hugui.user.model.User;
  3. import com.opensymphony.xwork2.ActionSupport;
  4. public class UserAction extends ActionSupport {
  5. private User user; //连接model ,在Action中不用new use 运行环境会自己建好,先运行user完,再将结果 复制到Acton里。 (有点模糊)
  6. //private UserDTO userDTO; //这个是用DTO 接收。DTO:数据传送对像。
  7. public String add() {
  8. System.out.println("name=" + user.getName());
  9. System.out.println("age=" + user.getAge());
  10. return SUCCESS;
  11. }
  12. public User getUser() {
  13. return user;
  14. }
  15. public void setUser(User user) { //从客户端传送来的信息先到model中处理好,再打包成user对像信息。(自己理解的)
  16. this.user = user; //将这个user对像传送给Action的
  17. }
  18. }
package com.hugui.user.action;

import com.hugui.user.model.User;
import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport {

private User user;                       //连接model ,在Action中不用new use 运行环境会自己建好,先运行user完,再将结果   复制到Acton里。 (有点模糊)
//private UserDTO userDTO;     //这个是用DTO 接收。DTO:数据传送对像。
public String add() {
   System.out.println("name=" + user.getName());  
   System.out.println("age=" + user.getAge());
   return SUCCESS;
}

public User getUser() {                       
   return user;
}

public void setUser(User user) {         //从客户端传送来的信息先到model中处理好,再打包成user对像信息。(自己理解的)
   this.user = user;     //将这个user对像传送给Action的
}

}


2.Struts.xml配置

Xml代码 复制代码 收藏代码
  1. <package name="user" extends="struts-default" namespace="/user">
  2. <action name="user" class="com.hugui.user.action.UserAction">
  3. <result>/user_add_success.jsp</result>
  4. </action>
<package name="user" extends="struts-default" namespace="/user">
        
        <action name="user" class="com.hugui.user.action.UserAction">
            <result>/user_add_success.jsp</result>
        </action>



3.index.jsp连接内容;

<a href="user/user!add?user.name=a&user.age=8">添加用户</a> //调用 UseAction中的add方法,

UseAction中private User user;连接域模型,调用了它里面的getName方法, Struts2 使用Domain Model接收参数

猜你喜欢

转载自jiushi555.iteye.com/blog/1629163