Struts2慢慢学之五(接上)----参数传递方法三
来源:互联网 发布:js追加div 编辑:程序博客网 时间:2024/06/06 11:47
上篇说明了下Struts2参数传递的两种方法,其中第二种方法被称为:DomainModel,域模型。即新建一个类,用于存放属性。
下面说明另外一种方法,被称为:ModelDriven,模型驱动。
它与第二种方法非常类似,其他都是一样的,仅仅就是Action和访问有区别,它的Action如下:
package com.bjsxt.struts2.user.action;import com.bjsxt.struts2.user.model.User;import com.opensymphony.xwork2.ActionSupport;import com.opensymphony.xwork2.ModelDriven;public class UserAction extends ActionSupport implements ModelDriven<User>{private User user = new User();public String add() {System.out.println("name=" + user.getName());System.out.println("age=" + user.getAge());return SUCCESS;}@Overridepublic User getModel() {return user;}}
我们可以从中看到,它实现了ModelDriven接口,并采用了泛型技术。采用这种方式Struts2不会自动的实例化一个对象,因此只能我们手动生成。它覆写了ModelDriven接口的getModel()方法,它的作用就是返回一个类对象。
它的访问是和第二种有区别的(与第一种方法一样):
使用ModelDriven接收参数<a href="user/user!add?name=a&age=8">添加用户</a>
它并没有采用user.name的方式,这也是为什么必须要new一个对象的原因。
这种方式的基本思想过程为:首先Action解析url,获得其中的参数,然后进入Action中,发现此Action实现了一个ModelDriven接口,此时就调用ModelDriven接口的getModel方法,获得类的对象,然后调用此类的set和get方法,将参数传入。
此种方式体现了Struts2的MVC思想,M----Model,V----View,C----Controller,但是这种方式很少使用,我们使用最多的还是上篇的第二种方式。
- Struts2慢慢学之五(接上)----参数传递方法三
- Struts2慢慢学之五----参数传递
- Struts2(接上)----参数传递方法二
- Struts2慢慢学之三------DMI
- struts2系列五之可以传递参数
- Struts2慢慢学之二-----路径问题解决
- Struts2慢慢学之四----通配符
- Struts2慢慢学之八----Result
- Struts2慢慢学之一
- Struts2慢慢学之六----简单的数据校验
- Struts2慢慢学之七----访问Web元素
- Struts2慢慢学之九----Result其他内容
- struts2中的参数传递方法
- Struts2 传递参数的方法
- struts2之jsp参数传递
- shell脚本之传递参数(三)
- Linux shell 基础(五),自己慢慢一步步学
- 函数参数传递方法三
- HttpURLConnection多线程下载
- JS 回车提交,兼容IE、火狐、Opera、Chrome、Safari…… .
- QFileInfo 的文件名提取问题
- 软件模式的小结
- 跨平台的编译
- Struts2慢慢学之五(接上)----参数传递方法三
- 【算法复习二】八皇后问题 ---- 回溯
- 利用保护页检测内存访问越界
- 自定义 QLabel
- boost::Any架构
- 定位java程序的数据库的连接配置
- SQL Server带列名导出到Excel(Export to CSV with headers)的几个思路
- IE8下载Microsoft Update加载项时崩溃的解决方法
- C++之面向对象学习笔记