Struts2学习之三种获得表单数据方式
来源:互联网 发布:人工智能怎么读 编辑:程序博客网 时间:2024/06/03 14:43
1.通过ActionContext方式获得
(1)因为方法不是静态方法,所以需要创建ActionContext对象
(2)但是不是new出来的,是通过getContext静态方式获取当前ActionContext
package com.sq.form;import java.util.Arrays;import java.util.Map;import java.util.Set;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;/** *@author sq * */public class Form1DemoAction extends ActionSupport {@Overridepublic String execute() throws Exception {//第一种使用ActionContext类获取//1.获取ActionContext对象ActionContext actionContext = ActionContext.getContext();//2.调用方法获取表单数据//key是表单name值,value是输入的值Map<String,Object> map = actionContext.getParameters();Set<String> keys = map.keySet();for(String key:keys){//根据key值获得value//有些chexbox可能name一样,值有多个,所以是数组数据Object[] object = (Object[]) map.get(key);System.out.println(Arrays.toString(object));}return NONE;}}
注意:表单提交如果是post方式,Struts2 已经解决了乱码问题
2.通过servletActionContext获取
(1)调用类里面的静态方法获得request对象
package com.sq.form;import java.util.Arrays;import java.util.Map;import java.util.Set;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;/** *@author sq * */public class Form2DemoAction extends ActionSupport {@Overridepublic String execute() throws Exception {//第二种方式使用servletActionContext类获取//1.使用静态方法获得request对象HttpServletRequest request = ServletActionContext.getRequest();//2.调用request方法获得表单数据String username = request.getParameter("username");String password = request.getParameter("password");String address = request.getParameter("address");System.out.println(username);System.out.println(password);System.out.println(address);return NONE;}}
3.使用接口注入方式
(1)让action实现接口,得到request对象
package com.sq.form;import java.util.Arrays;import java.util.Map;import java.util.Set;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import org.apache.struts2.interceptor.ServletRequestAware;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;/** *@author sq * */public class Form3DemoAction implements ServletRequestAware{private HttpServletRequest request;public String execute() throws Exception {//第三种方式使用实现servletrequestaware接口获取//调用request方法获得表单数据String username = request.getParameter("username");String password = request.getParameter("password");String address = request.getParameter("address");System.out.println(username);System.out.println(password);System.out.println(address);return "none";}@Overridepublic void setServletRequest(HttpServletRequest request) {this.request = request;}}
阅读全文
0 0
- Struts2学习之三种获得表单数据方式
- struts2——学习笔记1——struts2封装表单数据方式(三种)
- struts2学习(二)—action获取表单提交数据的三种方式
- Struts2获得表单数据
- Struts2中接收表单数据的三种驱动方式
- struts2获得form表单数据
- struts2学习之表单校验的两种方式
- SSH学习之Struts2获取表单数据
- Struts2中Action获得表单数据的几种方法
- Struts2中Action获得表单数据的几种方法
- Struts2表单数据接收方式
- struts2无法获得表单提交的数据
- struts2接数据的三种方式
- Struts2接受数据的三种方式
- struts2数据赋值三种方式
- Struts2 学习之三 数据验证
- struts2从表单取值的三种方式
- struts2从表单取值的三种方式
- OJ-火星???????计算器
- 手写一个jsonp
- Git提交步骤
- Windows中的进程的Working Set,Private Bytes和Virtual Bytes
- Robotframework使用自写库连接mysql数据库
- Struts2学习之三种获得表单数据方式
- Spring定时任务的几种实现
- Linux 上搭建 Zookeeper集群
- Linux安装JDK步骤
- 【R语言 爬虫】用R爬虫,爬取杭州安居客九堡租房信息
- Coderforces Petya and Strings
- intellij配置hibernate自动生成hbm.xml文件
- qt实战——时钟
- tcp二机制写死