JAVA框架Struts2 数据封装

一、strust2封装数据包含二部分:

数据在到Action类的时候,会经过拦截器,拦截器会有很多功能:比如数据封装、类型转换等。

我可以查看下strust-default.xml文件,看那些拦截器默认执行。

JAVA框架Struts2  数据封装

中的默认栈中的拦截器执行如下:

JAVA框架Struts2  数据封装

其中拦截器params和modelDriven分别为:属性封装和模块封装。

1、属性封装

 常用的:需要注意的是实现set方法。拦截器通过set方法给我们封装数据。

 1 package jd.com.dealdata;
 2 
 3 public class abdata {
 4     private String username;
 5     private  String password;
 6     public String datadeal(){
 7         System.out.println(this.password+this.username);
 8         return null;
 9     }
10 
11     public void setUsername(String username) {
12         this.username = username;
13     }
14 
15     public void setPassword(String password) {
16         this.password = password;
17     }
18 }

2、模块封装 (比较常用)

  1)准备工作:

    需要写javabean。

    继承接口:ModelDriven  是泛型后面传封装javabean类名称。

    实现方法:getModel 返回javabean的类。

 1 package jd.com;
 2 
 3 import com.opensymphony.xwork2.ActionSupport;
 4 import com.opensymphony.xwork2.ModelDriven;
 5 
 6 public class modal extends ActionSupport implements ModelDriven<User> {
 7     private User user =new User();
 8     @Override
 9     public User getModel() {
10         return user;
11     }
12 
13     @Override
14     public String execute() throws Exception {
15         System.out.println(user);
16         return NONE;
17     }
18 }