Struts2_参数获得方式
1.属性驱动
/**
* @ClassName: Demo8Action
* @Description: struts2如何获得参数
* 每次请求action时都会创建新的action实例对象
* @author 112
* @date 2018年2月25日 下午9:17:41
*/
public class Demo8Action extends ActionSupport{ public Demo8Action() {
super();
System.out.println("Demo8Action被创建了");
} //准备与页面字段名称相同的属性
private String name;
//自动类型转换
private Integer age;
private Date birthday; public String execute(){
System.out.println("name参数值为:" + name);
System.out.println("age参数值为:" + age);
System.out.println("birthday参数值为:" + birthday);
return SUCCESS;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public Integer getAge() {
return age;
} public void setAge(Integer age) {
this.age = age;
} public Date getBirthday() {
return birthday;
} public void setBirthday(Date birthday) {
this.birthday = birthday;
} }
<form action="${pageContext.request.contextPath}/Demo8Action">
用户名:<input type="text" name="name"/><br>
年龄:<input type="text" name="age"/><br>
生日:<input type="text" name="birthday"/><br>
<input type="submit" value="提交">
</form>
<package name="params" namespace="/" extends="struts-default">
<action name="Demo8Action" class="cn.rocker.c_params.Demo8Action" method="execute">
<result name="success" type="dispatcher">/form1.jsp</result>
</action>
</package>
2.对象驱动
/**
* @ClassName: Demo9Action
* @Description: TODO
* @author 112
* @date 2018年2月25日 下午10:27:54
*/
public class Demo9Action extends ActionSupport{
private User user; public String execute(){
System.out.println(user);
return SUCCESS;
} public User getUser() {
return user;
} public void setUser(User user) {
this.user = user;
}
}
<form action="${pageContext.request.contextPath}/Demo9Action">
用户名:<input type="text" name="user.name"/><br>
年龄:<input type="text" name="user.age"/><br>
生日:<input type="text" name="user.birthday"/><br>
<input type="submit" value="提交">
</form>
<package name="params" namespace="/" extends="struts-default">
<!-- 转发 -->
<action name="Demo9Action" class="cn.rocker.c_params.Demo9Action" method="execute">
<result name="success" type="dispatcher">/form2.jsp</result>
</action>
</package>
3.模型驱动
/**
* @ClassName: Demo10Action
* @Description: TODO
* @author 112
* @date 2018年2月25日 下午10:42:32
*/
public class Demo10Action extends ActionSupport implements ModelDriven<User>{ private User user = new User(); public String execute(){
System.out.println(user);
return SUCCESS;
} @Override
public User getModel() {
return user;
} }
<form action="${pageContext.request.contextPath}/Demo10Action">
用户名:<input type="text" name="name"/><br>
年龄:<input type="text" name="age"/><br>
生日:<input type="text" name="birthday"/><br>
<input type="submit" value="提交">
</form>
<package name="params" namespace="/" extends="struts-default">
<!-- 转发 -->
<action name="Demo10Action" class="cn.rocker.c_params.Demo10Action" method="execute">
<result name="success" type="dispatcher">/form3.jsp</result>
</action>
</package>
4.集合类型参数封装
/**
* @ClassName: Demo11Action
* @Description: 封装集合类型参数
* @author 112
* @date 2018年2月26日 下午8:39:59
*/
public class Demo11Action extends ActionSupport{
private List<String> list;
private Map<String,String> map; public String execute(){
System.out.println(list);
System.out.println(map);
return SUCCESS;
} public List<String> getList() {
return list;
} public void setList(List<String> list) {
this.list = list;
} public Map<String, String> getMap() {
return map;
} public void setMap(Map<String, String> map) {
this.map = map;
} }
<form action="${pageContext.request.contextPath}/Demo11Action">
用户名:<input type="text" name="list"/><br>
用户名:<input type="text" name="list[1]"/><br>
用户名:<input type="text" name="map['haha']"/><br>
<input type="submit" value="提交">
</form>
<package name="params" namespace="/" extends="struts-default">
<!-- 转发 -->
<action name="Demo11Action" class="cn.rocker.c_params.Demo11Action" method="execute">
<result name="success" type="dispatcher">/form4.jsp</result>
</action>
</package>
Struts2_参数获得方式的更多相关文章
- [Spring MVC] - SpringMVC的各种参数绑定方式
SpringMVC的各种参数绑定方式 1. 基本数据类型(以int为例,其他类似):Controller代码: @RequestMapping("saysth.do") publi ...
- SpringMVC的各种参数绑定方式
1. 基本数据类型(以int为例,其他类似):2. 包装类型(以Integer为例,其他类似):3. 自定义对象类型:4. 自定义复合对象类型:5. List绑定:6. Set绑定:7. Map绑定: ...
- 十一、Struts2封装请求参数的方式
十一.Struts2封装请求参数的方式 方式一.Action 本身作为model对象,通过成员setter封装(一个名字为params的拦截器干的) 注意:表单中的名称要和动作类中的名称一致(这是必须 ...
- C# 中参数验证方式
C# 中参数验证方式 一般在写方法的时候,第一步就是进行参数验证,这也体现了编码者的细心和缜密,但是在很多时候这个过程很枯燥和乏味,比如在拿到一个API设计文档的时候,通常会规定类型参数是否允许为空, ...
- Android进阶(二十五)setTextColor()的参数设置方式
setTextColor()的参数设置方式 查了下资料发现setTextColor()的参数可以写成以下形式: 直接使用颜色值 setTextColor(0xFF0000FF);//0xFF0000F ...
- get方法与post方法的区别与js获取url参数的方式
1.get方法与post方法的区别: 区别一:get重点在从服务器上获取资源,post重点在向服务器发送数据:区别二:get传输数据是通过URL请求,以field(字段)= value的形式,置于UR ...
- [转载]SpringMVC的Model参数绑定方式
SpringMVC的各种参数绑定方式 http://www.cnblogs.com/HD/p/4107674.html springMVC中复杂嵌套对象.List等集合类型数据绑定 http://ww ...
- DRF框架获取参数的方式
DRF获取参数的方式 例如url url(r'^demo/(?P<word>.*)/$', DemoView.as_view()) 在类视图中获取参数 url:http://127.0.0 ...
- 使用HTTP协议向服务器传参的方式及django中获取参数的方式
使用HTTP协议向服务器传参的四种方式 URL路径携带参数,形如/weather/beijing/2018; 查询字符串(query string),形如key1=value1&key2=va ...
随机推荐
- BZOJ2229[Zjoi2011]最小割——最小割树
题目描述 小白在图论课上学到了一个新的概念——最小割,下课后小白在笔记本上写下了如下这段话: “对于一个图,某个对图中结点的划分将图中所有结点分成两个部分,如果结点s,t不在同一个部分中,则称这个划分 ...
- Codeforces Round #507 Div. 1
D:类似于noip2018d1t3,子树内的链应该贪心的尽量合并而不是拆开.则设f[i]为i子树内满足选的链尽量多的情况下根所在的链的最长长度即可.于是可以线性对某个k求得答案. 注意到长度为k的链不 ...
- UESTC482-Charitable Exchange-bfs优先队列
#include <cstring> #include <algorithm> #include <iostream> #include <queue> ...
- idea maven +spring mvc
1.步骤一 2.目录结构 3.maven <!--测试--> <dependency> <groupId>junit</groupId> <art ...
- Pfsense2.34中文版
Pfsense2.34中文版 来源 https://forum.netgate.com/topic/112076/pfsense2-34%E4%B8%AD%E6%96%87%E7%89%88-%E8 ...
- 「HDU - 2857」Mirror and Light(点关于直线的对称点)
题目链接 Mirror and Light 题意 一条直线代表镜子,一个入射光线上的点,一个反射光线上的点,求反射点.(都在一个二维平面内) 题解 找出入射光线关于镜子直线的对称点,然后和反射光线连边 ...
- 板载 SPI-FLASH 的烧写方法
@2018-12-15 [筹划] 通过烧录器(JTAG/SWD)即可方便的烧写板载外部 FLASH [参考] 如何更好地设计面向在板烧录的产品(一)SPI Flash篇 keil将程序装入外部FLAS ...
- django从零开始-模板
1.应用中添加模板 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contentt ...
- [ZJOI2007]仓库建设(斜率优化)
L公司有N个工厂,由高到底分布在一座山上. 工厂1在山顶,工厂N在山脚. 由于这座山处于高原内陆地区(干燥少雨),L公司一般把产品直接堆放在露天,以节省费用. 突然有一天,L公司的总裁L先生接到气象部 ...
- [luogu3369][普通平衡树]
题目链接 思路 模板 只是有几个容易出错的地方 第45行容易忘记 第54行里面的cnt--和siz--容易忘记 第56行是根据id判断不是val 第60行siz--容易忘记 第64行是siz+1不是s ...