当前位置:天才代写 > tutorial > JAVA 教程 > Struts 2中通过Action自动吸收参数

Struts 2中通过Action自动吸收参数

2017-11-02 08:00 星期四 所属: JAVA 教程 浏览:1181

Struts2中Action吸收参数的要领主要有以下三种:

1.利用Action的属性吸收参数:(通过属性驱动式)

a.界说:在Action类中界说属性,建设get和set要领;

b.吸收:通过属性吸收参数,如:userName;

c.发送:利用属性名通报参数,如:user1!add?userName=Magci;

JSP:

<form action="sys/login.action" method="post">  
 <input type="text" name="username">  
 <input type="submit" value="submit">  
</form>

Action:直接通过get、set要领获取。

public class sysAction extends ActionSupport{  
 private String username;  
        
 public String login() throws Exception {  
  System.out.println(username);  
  return SUCCESS;  
 }  
        
 public String getUsername() {  
  return username;  
 }  
 public void setUsername(String username) {  
  this.username= username;  
 }  
}

2.利用ModelDriven吸收参数:(模子驱动方法,必需要实现ModelDriven<T>接口。对付要传入多个model第二种方法不利便)

a.界说:Action实现ModelDriven泛型接口,界说Model类的工具(必需new),通过getModel要领返回该工具;

b.吸收:通过工具的属性吸收参数,如:user.getUserName();

c.发送:直接利用属性名通报参数,如:user2!add?userName=MGC

JSP:

<form action="sys/login.action" method="post">  
 <input type="text" name="username">  
 <input type="submit" value="submit">  
</form>

Action:必需实现getModel() 要领

public class sysAction extends ActionSupport implements ModelDriven<User>{  
 private User user;  
       
 public String login() throws Exception {  
  System.out.println(getModel().getUsername());  
  return SUCCESS;  
 }  
       
 public User getModel() {  
  if (null == user) {  
   return user = new User();  
  }  
  return user;  
 }  
}

3.利用DomainModel吸收参数:(第三种规模模子方法可以完全不实现ModelDriven<T>,也可利用多个model工具的属性。)

a.界说:界说Model类,在Action中界说Model类的工具(不需要new),建设该工具的get和set要领;

b.吸收:通过工具的属性吸收参数,如:user.getUserName();

c.发送:利用工具的属性通报参数,如:user2!add?user.userName=MGC;

JSP:

<form action="sys/login.action" method="post">  
 <input type="text" name="user.username">  
 <input type="text" name="teacher.level">  
 <input type="submit" value="submit">  
</form>

Action: 必需提供set要领

public class sysAction extends ActionSupport{  
 private User user;  
 private Teacher teacher;  
       
 public String login() throws Exception {  
  System.out.println(user.getUsername());  
  System.out.println(teacher.getLevel());  
  return SUCCESS;  
 }  
       
 public void setUser(User user) {  
  this.user = user;  
 }  
 public void setTeacher(Teacher teacher) {  
  this.teacher = teacher;  
 }  
}

 

    关键字:

天才代写-代写联系方式