struts2获取请求参数的三种方式及传递给JSP参数的方式
package test;import com.opensymphony.xwork2.ActionSupport; import javax.servlet.http.*; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionContext; import java.util.*; public class HelloAction extends ActionSupport {public String jname = "";public String jid = "";@Overridepublic String execute() throws Exception {// TODO Auto-generated method stubreturn super.execute();}private String str = "";public String hello() {this.str = "hello!!!";System.out.println("方法一,把参数作为Action的类属性,让OGNL自动填充:");System.out.println("jname:" + jname + " jid:" + jid);ActionContext context=ActionContext.getContext(); HttpServletRequest request = (HttpServletRequest)context.get(ServletActionContext.HTTP_REQUEST);System.out.println("方法二,在Action中取得HttpServletRequest对象,使用request.getParameter获取参数");System.out.println("jname:" + request.getParameter("jname") + " jid:" + request.getParameter("jid"));Map parameterMap=context.getParameters(); String bookName2[]=(String[])parameterMap.get("jname"); String bookPrice2[]=(String[])parameterMap.get("jid"); System.out.println("方法三,在Action中使用ActionContext得到parameterMap获取参数:"); System.out.println("jname: " +bookName2[0]); System.out.println("jid: " +bookPrice2[0]); return "success";}public String getStr() {return str;}public void setStr(String str) {this.str = str;}public String getJname() {return jname;}public void setJname(String jname) {this.jname = jname;}public String getJid() {return jid;}public void setJid(String jid) {this.jid = jid;} }
HelloAction.java
总结:
方法一:当把参数作为Action的类属性,且提供属性的getter/setter方法时,xwork的OGNL会自动把request参数的值设置到类属性中,此时访问请求参数只需要访问类属性即可。
方法二:可以通过ActionContext对象Map parameterMap=context.getParameters();方法,得到请求参数Map,然后通过parameterMap来获取请求参数。需要注意的是:当通过parameterMap的键取得参数值时,取得是一个数组对象,即同名参数的值的集合。
方法三:通过ActionContext取得HttpServletRequest对象,然后使用request.getParameter("参数名")得到参数值。
参考:http://www.cnblogs.com/bmbm/archive/2011/11/28/2342273.html
转载于:https://www.cnblogs.com/tengpan-cn/p/5212029.html
struts2获取请求参数的三种方式及传递给JSP参数的方式相关推荐
- Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法...
Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法 www.MyException.Cn 发布于:2012-09-15 ...
- vue三种ajax请求方式,vue请求数据的三种方式
请求数据的方式: vue-resource 官方提供的 vue的一个插件 axios fetch-jsonp 一,vue-resource请求数据 介绍:vue-resource请求数据方式是官方提供 ...
- 反射应用和获取Class对象的三种方式
一.写一个"框架",可以创建任何对象运行任何方法 1.配置文件 2.使用类加载器ClassLoader,Properties集合是可以和IO流结合使用完成读取和写入数据的集合,方法 ...
- 获取Class对象的三种方式
获取Class对象的三种方式 Object --> getClass() 通过对象.getclass 任何数据类型(包括基本数据类型)都有一个"静态"的class属性 通过类 ...
- 获取class文件对象三种方式
Class类 阅读API的Class类得知,Class 没有公共构造方法.Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的 获取Clas ...
- java反射之获取class对象,Java之反射机制(获取Class对象的三种方式)
Java之反射机制(获取Class对象的三种方式) 开发工具与关键技术:MyEclipse 10,java 作者:刘东标 撰写时间:2019-06-14 如何得到各个字节码对应的实例对象? 每个类被加 ...
- JS基础-Java Class类以及获取Class实例的三种方式
JS基础-Java Class类以及获取Class实例的三种方式 由于JVM为每个加载的class创建了对应的Class实例,并在实例中保存了该class的所有信息,包括类名.包名.父类.实现的接口. ...
- vue修改http请求头_vue-resouce设置请求头的三种方法
本文主要介绍了vue-resouce设置请求头的三种方法,分享给大家,具体如下: 第一种:在Vue实例中设置 var vm = new Vue({ el:'#rrapp', data:{ showLi ...
- python 命令-python解析命令行参数的三种方法详解
这篇文章主要介绍了python解析命令行参数的三种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 python解析命令行参数主要有三种方法: ...
最新文章
- Forefront_TMG_2010-TMG建立站点间***
- python向图片里添加文字
- 一个简单的线性拟合问题,到底有多少种做法
- 运维少年系列 python and cisco (1)
- mybatis 添加语句返回对象_Mybatis底层源码分析
- 一加WarpTen技术今日发布:全新旗舰一加7将搭载
- 一流设计导航|16map|效率导航最全设计类软件!速度收藏!!
- 移动端input“输入框”常见问题及解决方法
- 分区 Service Bus 队列和主题
- 在 lamp(centos)下配置二级 域名 、虚拟主机
- 我的 CSDN 两周年创作纪念日
- mp3转html,使用javascript将wav转换为mp3
- B-树、B+树、B*树
- 智力题----囚犯猜帽子问题
- django 1.8 mysql_mysql - 升级1.7.4到django 1.8 south.db.mysql错误,不使用南 - 堆栈内存溢出...
- 2013级C++第15周项目——二维数组
- LeetCode 229 求众数 II
- wpf 打开输入法、禁用输入法
- D妹上新|DoH和DoT开始公测啦!
- 富士胶片集团发布2021财年上半年度财报;罗克韦尔自动化推出新的远程访问解决方案 | 全球TMT...
热门文章
- amoeba mysql读写分离_Mysql 实现读写分离的详细教程(amoeba)
- mysql恢复 报错_Mysql 数据恢复报错
- linux光标美化包,使用 [ powerlevel10k ] 美化你的WSL (Linux)
- php输出json到表格,PHP中把数据库查询结果输出为json格式
- mysql 5.0 乱码,解决MySQL 5.0.16的乱码问题
- ccs安装多版本编译器离线_大数据分析:学习工具JDK,在线安装指南
- Win32ASM学习[19]:结构与联合
- c++ socket学习(1.3)
- 合页损失,铰链损失_多点铰链损失功能 使用Python的线性代数
- php 生成css文件怎么打开,php生成html文件的多种步骤介绍