Struts2 的Action中取得请求参数值的几种方法
先看GetRequestParameterAction类代码:
Java代码
- public class GetRequestParameterAction extends ActionSupport {
- private String bookName;
- private String bookPrice;
- public String getBookName() {
- return bookName;
- }
- public void setBookName(String bookName) {
- this.bookName = bookName;
- }
- public String getBookPrice() {
- return bookPrice;
- }
- public void setBookPrice(String bookPrice) {
- this.bookPrice = bookPrice;
- }
- public String execute() throws Exception{
- //方式一: 将参数作为Action的类属性,让OGNL自动填充
- System.out.println("方法一,把参数作为Action的类属性,让OGNL自动填充:");
- System.out.println("bookName: "+this.bookName);
- System.out.println("bookPrice: " +this.bookPrice);
- //方法二:在Action中使用ActionContext得到parameterMap获取参数:
- ActionContext context=ActionContext.getContext();
- Map parameterMap=context.getParameters();
- String bookName2[]=(String[])parameterMap.get("bookName");
- String bookPrice2[]=(String[])parameterMap.get("bookPrice");
- System.out.println("方法二,在Action中使用ActionContext得到parameterMap获取参数:");
- System.out.println("bookName: " +bookName2[0]);
- System.out.println("bookPrice: " +bookPrice2[0]);
- //方法三:在Action中取得HttpServletRequest对象,使用request.getParameter获取参数
- HttpServletRequest request = (HttpServletRequest)context.get(ServletActionContext.HTTP_REQUEST);
- String bookName=request.getParameter("bookName");
- String bookPrice=request.getParameter("bookPrice");
- System.out.println("方法三,在Action中取得HttpServletRequest对象,使用request.getParameter获取参数:");
- System.out.println("bookName: " +bookName);
- System.out.println("bookPrice: " +bookPrice);
- return SUCCESS;
- }
- }
总结:
方法一:当把参数作为Action的类属性,且提供属性的getter/setter方法时,xwork的OGNL会自动把request参数的值设置到类属性中,此时访问请求参数只需要访问类属性即可。
方法二:可以通过ActionContext对象Map
parameterMap=context.getParameters();方法,得到请求参数Map,然后通过parameterMap来获取请求参数。需要注意的是:当通过parameterMap的键取得参数值时,取得是一个数组对象,即同名参数的值的集合。
方法三:通过ActionContext取得HttpServletRequest对象,然后使用request.getParameter("参数名")得到参数值。
Struts2 的Action中取得请求参数值的几种方法的更多相关文章
- 在Struts2的Action中取得请求参数值的几种方法
先看GetRequestParameterAction类代码: public class GetRequestParameterAction extends ActionSupport { priva ...
- 在Struts2的Action中获得request response session几种方法
转载自~ 在Struts2中,从Action中取得request,session的对象进行应用是开发中的必需步骤,那么如何从Action中取得这些对象呢?Struts2为我们提供了四种方式.分别为se ...
- struts2的action从request获取参数值的几种方式
使用jquery框架的ajax能够方便的向后台传递参数,以$.post为例,参数有2种方式字符串和键值对:$.post(url, "name=aty&age=25")和$. ...
- Struts2的Action中获取request对象的几种方式?
通过ActionContext.getSession获取 通过ServletActionContext.getRequest()获取 通过SessionAware接口注入 通过ServletReque ...
- Struts2 在Action中操作数据
Servlet存储数据的方式 在Servlet中,使用ServletContext对象来存储整个WebApp的数据,ServletContext中直接存储整个WebApp的公共数据,可使用set|ge ...
- Struts2中Action取得表单数据的几种方法
Struts2中Action取得表单数据的几种方法 Struts2中Action获得表单数据的几种方法struts2 Action获取表单传值 1.通过属性驱动式JSP: <form act ...
- 在struts2的action中操作域对象(request、session)
在struts2的Action中,操作域对象一共有三种方式: 1.ActionContext(与servelt API无关联): //相当于request ActionContext.getConte ...
- JavaWeb_(Struts2框架)Action中struts-default下result的各种转发类型
此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核 ...
- SpringMVC的请求转发的三种方法
SpringMVC请求转发的三种方法 首先明白请求转发是一次请求,地址栏不会发生变化,区别于重定向.springmvc环境自行配置. 以下举例中存在如下文件/WEB-INF/pages/success ...
随机推荐
- javascript高级程序设计第二章
看后总结: 1.js代码用得最多的两种加载方式: a)外部文件形式:<script type="text/javascript" src="jquery.min.j ...
- Cookies揭秘 [Asp.Net, Javascript]
一,前言 Cookies想必所有人都了解, 但是未必所有人都精通.本文讲解了Cookies的各方面知识, 并且提出来了最佳实践.这是笔者在日常工作中的积累和沉淀. 二,基础知识 1.什么是Cookie ...
- Hadoop分布式文件系统:架构和设计
原文地址:http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_design.html 引言 前提和设计目标 硬件错误 流式数据访问 大规模数据集 简单的一致性模型 ...
- SAP接口设计的扩展性考虑
由于现在的系统和SAP的接口出现了几次变更,因此需要对系统进行设计改造.由于系统中和SAP交互的接口不止一处,而且也是在不同的时间段进行开发,并由不同的人员来完成的,因此我在维护升级的 ...
- IIS下浏览指定文件(如:web.config)
具体步骤如下: 1.快捷键:Ctrl + R 2.输入:%windir%\System32\inetsrv\config\applicationHost.config 3.注销:fileExtensi ...
- stm32 usart的几种通信模式
一 USART 通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换. USART支持同步单向通信和半双工单线通信,也支持LIN(局 ...
- Excel 求差集和并集
1. excel求两列差集(查找A列中与B列不同的部分) 示例: 行号 A列 B列 C列结果(A-B) 1 1 3 ...
- ubuntu14中创建python虚拟环境
一.安装python-virtualenv包 sudo apt-get install python-virtualenv 安装完成后,创建一个虚拟环境文件夹. mkdir VENVcd VENV 创 ...
- Android开发5——文件读写
一.基本概念 在Android应用中保存文件,保存的位置有两处 ①手机自带的存储空间,较小(如200M),适合保存一些小文件,Android中保存位置在data/data/应用包名/files目录 ② ...
- Hadoop自学笔记(五)配置分布式Hadoop环境
上一课讲了怎样在一台机器上建立Hadoop环境.我们仅仅配置了一个NHName Node, 这个Name Node里面包括了我们全部Hadoop的东西.包括Name Node, Secondary N ...