概述
常见的前台和后台之间的数据交换方式:页面提交请求参数到Action,在Action中接收参数并且对请求参数进行数据封装,封装到一个JavaBean中,然后将JavaBean传递给业务层。
Struts2封装数据的方式有两大类,一是属性驱动,二是模型驱动
属性驱动
属性驱动可分为两类,一类是需要提供属性的set方法,另一类是同过表达式直接封装数据到对象中。
方法一:
需要直接在Action中定义属性,并且提供属性的set方法,如果一个Action类有太多属性,则这种方法会大大增加代码量,不合适
前端页面:
<form action="/bos/ActionDemo.action" method="post"> 姓名<input type="text" name="name"/> </form>
Action类:
public class ActionDemo extends ActionSupport { private String name; public void setName(String name) { this.name = name; } }
方法二:
需要Action中定义一个JavaBean对象并提供它的get方法,在页面中调用参数的值时要用类名来调用
前端页面:
<form action="/bos/ActionDemo.action" method="post"> 姓名<input type="text" name="user.name"/> </form>
Action类:
public class ActionDemo extends ActionSupport { private User user; public User getUser() { return user; } }
模型驱动(ModelDriven)
通过实现ModelDriven接口来接收请求参数,Action类必须实现ModelDriven接口,并且要重写getModel()方法,这个方法返回的就是Action所使用的数据模型对象JavaBean,采用模型驱动可以达到JavaBean所封装的属性与表单的属性一一对应的目的,JavaBean成为数据的载体
前端页面:
<form action="/bos/ActionDemo.action" method="post"> 姓名<input type="text" name="name"/> </form>
Action类:
public class ActionDemo extends ActionSupport implements ModelDriven<User>{ private User user = this.getModel(); @Override public User getModel() { return user; } }
最后
以上就是拉长飞鸟为你收集整理的Struts2-01-数据访问的全部内容,希望文章能够帮你解决Struts2-01-数据访问所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复