SpringMvc4中获取request、response对象的方法
springMVC4中获取request和response对象有以下两种简单易用的方法:
1、在control层获取
在control层中获取HttpServletRequest和HttpServletResponse对象有以下两种简单方式:
1)通过方法参数直接在action类中获取
@Controller
class Action{
@RequestMapping("/path")
public String getReqAndRes(HttpServletRequest request, HttpServletResponse response){
/** 相关业务代码 此时可以直接使用request response对象 */
}
}
2)利用spring web提供的@ModelAttribute注解
@ModelAttribute放在类方法的参数前面表示引用Model中的数据
@ModelAttribute放在类方法上面则表示该Action类中的每个请求调用之前都会执行该方法,因此在此方法里面可以做一些请求预处理,利用此特性就可以抽象出一个基本Action类,然后所有的Action类都继承自这个基本Aciton类,在基本Action类里面获取相应的request、response、session对象:
public class BaseAction{
protected HttpServletRequest request;
protected HttpServletResponse response;
protected HttpSession session;
@ModelAttribute
public void setReqAndRes(HttpServletRequest request, HttpServletResponse response){
this.request = request;
this.response = response;
this.session = request.getSession();
}
/** 其他业务代码 */
}
2、通过spring提供的RequestContextHolder在非contrller层获取request和response对象
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
HttpServletResponse response = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getResponse();
HttpServletResponse response = ((ServletWebRequest)RequestContextHolder.getRequestAttributes()).getResponse();
ServletContext context = ContextLoader.getCurrentWebApplicationContext().getServletContext();
SpringMvc4中获取request、response对象的方法相关推荐
- Spring 中获取 request 的几种方法,及其线程安全性分析
概述 在使用Spring MVC开发Web系统时,经常需要在处理请求时使用request对象,比如获取客户端ip地址.请求的url.header中的属性(如cookie.授权信息).body中的数据等 ...
- java获取response对象_Java 获取Request,Response对象方法
第一种.参数 @RequestMapping("/test") @ResponseBodypublic void saveTest(HttpServletRequest req, ...
- Java 获取Request,Response对象方法
第一种.参数 @RequestMapping("/test") @ResponseBody public void saveTest(HttpServletRequest req, ...
- Spring中获取request的方法及其线程安全性分析
在使用Spring MVC开发Web系统时,经常需要在处理请求时使用request对象,比如获取客户端ip地址.请求的url.header中的属性(如cookie.授权信息).body中的数据等.由于 ...
- springMVC中获取request 对象
1.最简单的方式(注解法) @Autowired private HttpServletRequest request; 2.最麻烦 a. 在web.xml中配置一个监听 <listener&g ...
- Spring MVC中获取Request的方法及分析
一.概述 在使用Spring MVC开发Web系统时,经常需要在处理请求时使用request对象,比如获取客户端IP地址.请求的URL.header中的属性(如cookie.授权信息).body中的数 ...
- Struts2.x中获取request,response,session的方式
Struts2.x中获取request,response,session的方式有两种:非IOC方式和IOC方式: 一:非IOC方式: 要获得request,response,session 这些对象, ...
- java定时器任务中获取request对象 @Scheduled 获取request 对象 quartz中获取request对象
java定时器任务中获取request对象 @Scheduled 获取request 对象 quartz中获取request对象 一.问题描述 1.在java定时任务中,使用 @Scheduled 注 ...
- spring aspect通知中获取request对象
注:aop = aspect = 切面 在aspect 中一般是做: 事务控制.日志.权限控制 等等,这些场景. 在aop切面类中,直接使用ServletActionContext.getReques ...
最新文章
- mysql root的密码忘了?linux下重置mysql的root用户密码。
- docker-ce版本私有仓库搭建
- c语言char有什么作用,C语言中char*和char[]用法区别分析
- 推荐系统常用评价指标和代码实现
- mysql5.7.17完全卸载_MySQL5.7完全卸载步骤详解
- SQL存储过程与自定义函数实例
- Keepalived-在没有之前配置的Nginx高可用(不建议采纳)
- eBay起诉指控亚马逊利用非法手段挖走其卖家
- android+京东分类菜单,Android仿京东商品分类
- pci串口驱动安装失败_PCI并口卡驱动安装不上
- linux 如何加定时任务,linux系统添加定时任务
- 核只有单位元等价于映射是单射
- 流利阅读12.17 Why are the 'yellow vests' still protesting in France? His name is Macron
- vue+element模仿电商商城,前后端分离实现,下单微信扫码支付
- 【个人笔记】SIPp学习-注册,呼叫与超时
- C语言实现http服务器(Linux)
- PMD相位提取及相位展开简述
- 【爱找茬】linux系统和windows系统,你找到了几处不同?
- c++ 随机字符串_连载|想用Python做自动化测试?了解数值计算和随机数生成神器...
- 轻量级Transformer模型ConvBERT架构及完整源码实现
热门文章
- asp页面和Asp.net页面传中文参数UrlEncode编码以及接收解码
- 深入理解PHP之数组遍历
- 《异步处理在分布式系统中的优化作用》学习笔记
- C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(ubuntu g++)——插入
- 设计模式之原型模式(Prototype)摘录
- 【摄像头】摄像机工作原理
- 请写出查询该表中成绩最大值的sql语句_SQL-汇总分析
- js 等待某个函数执行完_JS 函数的执行时机
- linux如何设置awesome字体,Awesome简单配置
- nosql mysql mongodb_关于NoSQL之MongoDB的一些总结