获取页面传值,Struts2三种传参方式(从jsp页面传到Action)
1)、直接在action中写属性,然后写set、get方法
* 1.在Action里添加属性,属性名要对应jsp上的属性名
* 2.添加相应的set方法
private String name;
private String password;
private Date birthday;
private int age;
public MyParamAction1(){
System.out.println("我被创建了");
}
public String add(){
System.out.println("name="+name+",password="+password+",birthday="+birthday+",age="+age);
return "delete";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
private String name;
private String password;
private Date birthday;
private int age;
public MyParamAction1(){
System.out.println("我被创建了");
}
public String add(){
System.out.println("name="+name+",password="+password+",birthday="+birthday+",age="+age);
return "delete";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
2)、把属性封装到dto中,传值时以dto名字.其中属性
* 1.在Action里添加属性,属性名要对应jsp上的属性名
* 2.添加相应的set方法
action:private UserDTO user;对应的getter和setter方法
UserDTO :private String name,pass;对应的getter和setter方法
jsp:<input type="text" name="user.name">
public MyParamAction2(){
System.out.println("我被创建了");
}
private User user=new User();
public String add(){
System.out.println("name="+user.getName()+",password="+user.getPassword()+
",birthday="+user.getBirthday()+",age="+user.getAge());
return "delete";
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
jsp:
<!--方法2 -->
<!-- 名字:<input type="text" name="user.name">
密码:<input type="password" name="user.password">
生日:<input type="text" name="user.birthday">
年龄:<input type="text" name="user.age">
<input type="submit" value="submit">
-->
public MyParamAction2(){
System.out.println("我被创建了");
}
private User user=new User();
public String add(){
System.out.println("name="+user.getName()+",password="+user.getPassword()+
",birthday="+user.getBirthday()+",age="+user.getAge());
return "delete";
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
jsp:
<!--方法2 -->
<!-- 名字:<input type="text" name="user.name">
密码:<input type="password" name="user.password">
生日:<input type="text" name="user.birthday">
年龄:<input type="text" name="user.age">
<input type="submit" value="submit">
-->
3)、实现ModelDriven接口
实现方法:
public UserDTO getModel() {
if(user==null){
user=new UserDTO();
}
return user;
}
public String add(){
System.out.println("name="+user.getName()+",password="+user.getPassword()+
",birthday="+user.getBirthday()+",age="+user.getAge());
return "delete";
}
private User user=null;
@Override
public User getModel() {
if(user==null){
user=new User();;
}
return user;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public String add(){
System.out.println("name="+user.getName()+",password="+user.getPassword()+
",birthday="+user.getBirthday()+",age="+user.getAge());
return "delete";
}
private User user=null;
@Override
public User getModel() {
if(user==null){
user=new User();;
}
return user;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
4)、HttpServletRequest request 传参方式
private HttpServletRequest request =ServletActionContext.getRequest();
String name=request.getParameter("name");
/**
* 第四种方法
*/
private HttpServletRequest request =ServletActionContext.getRequest();
String name=request.getParameter("name");
String password=request.getParameter("password");
public String add(){
System.out.println("name="+name+",password="+password);
return "delete";
}
* 第四种方法
*/
private HttpServletRequest request =ServletActionContext.getRequest();
String name=request.getParameter("name");
String password=request.getParameter("password");
public String add(){
System.out.println("name="+name+",password="+password);
return "delete";
}