Struts2中StrutsRequestWrapper类
该类可获取一些请求地址,在自定义struts2标签时用到
//获取值栈
Map cont= this.getStack().getContext();
StrutsRequestWrapper req=(StrutsRequestWrapper)cont.get(StrutsStatics.HTTP_REQUEST);
//获取请求action的地址
String url=(String)req.getAttribute("javax.servlet.forward.request_uri");
System.out.println("PageComponent.start()"+url); //获取的标签所在jsp页面的全路径
StringBuffer stringBuffer=req.getRequestURL();//http://localhost:8080/Struts2HibernateSpring/list.jsp
System.out.println("PageComponent.start()"+stringBuffer.toString()); //获取的是请求后台的地址,其中的参数的值
Object object=req.getAttribute("pageNo");
System.out.println("PageComponent.start()");
//key--->value
//javax.servlet.forward.query_string-->(获取请求参数字符串)pageNo=1&seachName=%E5%B0%9A%E6%99%93%E9%A3%9E
//javax.servlet.forward.request_uri-->(获取请求路径到方法名)/Struts2HibernateSpring/StudentAction!queryStudent
//javax.servlet.forward.context_path-->( 获取项目名)/Struts2HibernateSpring
//javax.servlet.forward.servlet_path--> (获取请求的action名字+method名字)/Struts2HibernateSpring
//struts.request_uri --->(获取请求路径到方法名)/Struts2HibernateSpring/StudentAction!queryStudent
//struts.view_uri -->(获取struts请求返回的jsp的路径)/list.jsp
//__cleanup_recursion_counter---> 1
//characterEncodingFilter.FILTERED--> true
//struts.actionMapping--->ActionMapping{name='StudentAction', namespace='/', method='queryStudent', extension='null', params=null, result=null}
//org.springframework.web.context.request.async.WebAsyncManager.WEB_ASYNC_MANAGER--->org.springframework.web.context.request.async.WebAsyncManager@10f892d
//struts.valueStack--->com.opensymphony.xwork2.ognl.OgnlValueStack@1dc2914
Enumeration<String> pd=req.getAttributeNames();
while(pd.hasMoreElements()){
String nameString=pd.nextElement();
Object object2=req.getAttribute(nameString);
System.out.println("PageComponent.start()"+object2);
}
Struts2中StrutsRequestWrapper类的更多相关文章
- 关于struts2中ActionContext类的作用
关于struts2中ActionContext类的作用有三个: 1.获取三大作用域对象及页面参数 2.是struts标签的上下文对象 3.ThreadLocal内装的就是ActionContext 怎 ...
- Struts2中Action类的三种写法
一.普通的POJO类(没有继承没有实现)-基本不使用 POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创 ...
- 3.Struts2中Action类的三种写法
一.普通的POJO类(没有继承没有实现)-基本不使用 public class DemoAction1 { public String execute(){ System.out.println(&q ...
- 2018.11.19 Struts2中Action类的书写方式
方式1: 方式2: 方式3
- 转载 Struts2之------Action类中的get,set方法和execute方法的使用规范和使用流程(规范是没有理由的,必须遵守!!!)
1,Action中get,set方法的使用流程? 前台form中有一个<input type="text" name="username"/> 如果 ...
- Struts2中的ActionContext、OGNL及EL的使用
文章分类:Java编程 本文基于struts2.1.8.1,xwork2.1.6 1.EL EL(Expression Language)源于jsp页面标签jstl,后来被jsp2.0 ...
- struts2中各种值栈问题
struts2中OGNL和 ValueStack(一) 收藏 学习的时候,总分不清楚在struts2中页面的传值和取值是怎么来完成的,所以从网上搜了很多资料,现在把这些资料总结写,留着以后参考..看完 ...
- [原创]java WEB学习笔记55:Struts2学习之路---详解struts2 中 Action,如何访问web 资源,解耦方式(使用 ActionContext,实现 XxxAware 接口),耦合方式(通过ServletActionContext,通过实现 ServletRequestAware, ServletContextAware 等接口的方式)
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- 在Struts2中使用ValueStack、ActionContext、ServletContext、request、session等 .
笔者不知道该用哪个词来形容ValueStack.ActionContext等可以在Struts2中用来存放数据的类.这些类使用的范围不同,得到的方法也不同,下面就来一一介绍. 声明:本文参考Strut ...
随机推荐
- (转)如何让ActiveXObject( "Microsoft.XmlDom ")对象在非IE浏览器下显示数据?firefox(火狐)
如何让ActiveXObject( "Microsoft.XmlDom ")对象在非IE浏览器下显示数据?firefox(火狐) 2013-09-10 16:01 2152人阅读 ...
- hdu 5017
好恶心的题 #include <cstdio> #include <string.h> #include <algorithm> #include <cmat ...
- laravel 多图上传
前台 name="photo[]" 后台获取 $request->file('photo');//获取多个图片循环
- 异常来自HRESULT:0x80070422
今天同事使用一个用VB.NET2008开发的应用程序时提示“出现了下列应用程序错误:无法启动服务,原因可能是已被禁用或与其相关联的设备没有启动.(异常来自HRESULT:0x80070422)” ...
- 20145204《Java程序设计》第3周学习总结
20145204<Java程序设计>第3周学习总结 教材学习内容总结 对象和类. Java有基本类型和类类型这两个类型系统.本章主要介绍类类型.定义类时用关键词class,利用类建立对象实 ...
- STRIDE 和 DREAD
目录 STRIDE 和 DREAD 背景 STRIDE DREAD 注释 STRIDE 和 DREAD 背景 STRIDE 和 DREAD 是最常用也是最好用的安全模型 STRIDE 主要负责对安全风 ...
- Zynq-Linux移植学习笔记之十-u-boot网络配置
在zynq开发板zc706上,网络通路由下面三个设备组成: 其中zynq负责对phy进行配置,当zynq上的网络控制器以及phy完成正确配置时,能够看到RJ45上面的黄灯亮,此时表明链路已经通了.如果 ...
- Vue.js 计算属性是什么
Vue.js 计算属性是什么 一.总结 一句话总结: 模板 表达式 维护 在模板中表达式非常便利,但是它们实际上只用于简单的操作.模板是为了描述视图的结构.在模板中放入太多的逻辑会让模板过重且难以维护 ...
- 缓存cache(5.2新:redis): gem faker (6600✨) 命令行工具curl(系统内置,可在git上看到文档)
⚠️本章节记录缓存的一些方法的用法案例,配合这篇博客一起阅读:https://i.cnblogs.com/EditPosts.aspx?postid=8776632 前置种子 https://git ...
- Android之微信开放平台创建应用
微信开放平台网站:https://open.weixin.qq.com 1:登录之后(未登录就注册),点击移动应用开发进入 点击创建应用之后,进入填写对应信息. 接下来,填写平台信息. 应用签名获取方 ...