Struts2通过拦截器机制封装了三种接收页面参数的方式:

  1.属性驱动

  2.模型驱动(有两种)

    Domain

    ModelDriven

  1.属性驱动:这种方式比较简单,只要你直接在页面定义变量并且符合以下两个规则,就会自动接收值。

    规则1:你变量的名字和页面的name属性一致

    规则2:生成对应的get set方式

  Action写法:

public class ParamAction {
private String username;
private String password;
public String para1(){
System.out.println("用户名:"+username+"密码"+password);
return "success";
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}

  页面写法:

  2.Domain:在Action中创建实体类的对象,并且符合以下两个规则就可以

    规则1:页面的那么属性写法:对象名.属性名

    规则2:生成get set方法

  Action写法:

public class ParamAction2 extends ActionSupport {
private User user;
public String para2(){
System.out.println("用户名:"+user.getUsername()+"密码"+user.getPassword());
return "success";
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}

  实体类:get set省略了,自己生成

    private String username;
private String password;

  页面写法:

  3.实现ModelDriven接口,这个一个泛型接口,泛型中的内容就是你要接受的实体类

    规则1:实现ModelDriven这个接口,并实现其getModel方法

    规则2:提供一个空的对象供其初始化

    规则3:页面的名字和实体类的属性名一致

  Action写法:

/**
* 1.类要实现ModelDriven这个接口
* @author Administrator
*
*/
public class ParamAction3 implements ModelDriven<User> {
//2.提供一个空的对象供其初始化,一定要new出来
private User user =new User();
public String para3(){
System.out.println(user.getUsername()+user.getPassword());
return "success";
}
//3.把user返回
public User getModel() {
return user;
}
}

  页面写法:

3.struts2接收页面传参的三种方式的更多相关文章

  1. react-绑定this并传参的三种方式

    绑定this并传参的三种方式 在事件中绑定this并传参: <input type="button" value="在事件中绑定this并传参" onCl ...

  2. vue路由传参的三种方式以及解决vue路由传参页面刷新参数丢失问题

    最近项目中涉及到跨页面传参数和后台进行数据交互,看到需求之后第一反应就是用路由传参来解决:Vue中给我们提供了三种路由传参方式,下面我们一个一个的来看一下: 方法一:params传参: this.$r ...

  3. vue路由传参的三种方式区别(params,query)

    最近在做一个项目涉及到列表到详情页的参数的传递,网上搜索一下路由传参,结合自己的写法找到一种适合自己的,不过也对三种写法都有了了解,在此记录一下 <ul class="table_in ...

  4. React中使用 react-router-dom 路由传参的三种方式详解【含V5.x、V6.x】!!!

    路由传值的三种方式(v5.x) params参数 //路由链接(携带参数): <Link to='/demo/test/tom/18'}>详情</Link> //或 <L ...

  5. vue里面路由传参的三种方式

    1.方式一 通过query的方式也就是?的方式路径会显示传递的参数 HTML的方式<router-link :to="{name:xxx,query:{page:1,code:8899 ...

  6. 【service调用dao层传参的三种方式】

    第一种方案:默认数组角标: service Public User selectUser(String name,String area); mapper: <select id="s ...

  7. Vue-router路由传参的三种方式

    本文简单介绍下三种路由传参: (1)在路由中配置 { path : ‘/home/:id’, name : ‘Dome’, component } 然后写调用的时候 this.$router.push ...

  8. React路由传参的三种方式

    方式 一:          通过params         1.路由表中                     <Route path=' /sort/:id '   component= ...

  9. vue路由传参的三种方式

    方式一 通过query方式传参 这种情况下 query传递的参数会显示在url后面 this.$router.push({ path: '/detail', query: { id: id } }) ...

随机推荐

  1. JAVA源码走读(二)二分查找与Arrays类

    给数组赋值:通过fill方法. 对数组排序:通过sort方法,按升序.比较数组:通过equals方法比较数组中元素值是否相等.查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找 ...

  2. Nginx图片剪裁模块探究

    http://nginx.org/en/docs/http/ngx_http_image_filter_module.html http://cwtea.blog.51cto.com/4500217/ ...

  3. Windows下Python连接数据库(mysql, mongodb)

    一 实验平台 1 os: win7 64位旗舰版sp1 2 python: 2.7.10 x64 二 连接数据库 1 连接 mysql数据库 (1)下载mysql(5.6.25-winx64) 建议下 ...

  4. prim算法查找最小生成树

    我们在图的定义中说过,带有权值的图就是网结构.一个连通图的生成树是一个极小的连通子图,它含有图中全部的顶点,但只有足以构成一棵树的n-1条边.所谓的最小成本,就是n个顶点,用n-1条边把一个连通图连接 ...

  5. CM添加kafka服务

    下载所需的包: 在http://archive.cloudera.com/kafka/parcels/latest/ 选择合适parcel下载: ubuntu14.04的cdh5.5.1对应包 htt ...

  6. linux基础1——网络配置入门

    1.IP地址配置 (1)临时IP更改 sudo ifconfig eth0 down    暂停接口 sudo ifconfig eth0 192.168.1.xx sudo ifconfig eth ...

  7. Tableau地图移动

    最近又回归写报表,新的工具使用Tableau,这次要做一个地图,当地图导入之后一直无法能够较好的移动地图,百度也找不到资料. 每次点击一下省份或者利润就是放大或者缩小,很不好移动位置. 研究了一下很简 ...

  8. cron 定时器简单入门

    cron:计划任务,是任务在约定的时间执行已经计划好的工作,根据配置文件约定的时间来执行特定的任务. 编写测试类继承 IJob ,实现Execute 此方法就是用于定时的任务 配置定时时间: 先创建w ...

  9. 解决windows 2003 无法安装vss2005的问题

    1.打开vss2005  进行安装提示 未安装 sp1 2.下载了sp1 英文版本,与服务器语言对不上,删除,再下个 简体中文版 3.提示 无法识别 key,百度搜索 Windows XP/2003序 ...

  10. iconfont 图标字体

    iconfont 技术的主要是将图标转化为字体来减少应用体积.如需在项目中使用iconfont技术,图标矢量图一开始都应合并转化为字体库.   优点: 减小体积,字体文件比图片要小 图标保真缩放,解决 ...