接收参数的方式暂时先介绍以下三种:
1.用action类的属性接收
定义要接收的属性,提供setter和getter方法,数据类型的转换struts2会自动完成。
1 package com.action; 2 3 import com.opensymphony.xwork2.ActionSupport; 4 5 public class UserAction extends ActionSupport { 6 private String name; 7 private int age; 8 9 public String add(){ 10 System.out.println("name: "+name); 11 System.out.println("age: "+age); 12 return SUCCESS; 13 } 14 15 public String getName() { 16 return name; 17 } 18 19 public void setName(String name) { 20 this.name = name; 21 } 22 23 public int getAge() { 24 return age; 25 } 26 27 public void setAge(int age) { 28 this.age = age; 29 } 30 31 32 }
2.使用DomainModel
1 package com.action; 2 3 import com.opensymphony.xwork2.ActionSupport; 4 5 public class TestAction extends ActionSupport{ 6 7 private Users users; 8 9 public Users getUsers(){ 10 11 return users; 12 13 } 14 15 public void setUsers(Users users){ 16 17 this.users=users; 18 19 }
注意:Users对象不需实例化,struts2会帮我们完成。
Users类的具体代码略。
有关DTO的内容暂不介绍。
3.使用ModelDriven:
该方法使用不多。
1 public class UserAction extends ActionSupport implements ModelDriven<User>{ 2 private User user = new User(); 3 4 public User getModel() { 5 return user; 6 } 7 }
此处注意理解MVC的思想。