Spring中有哪几种方法获取HttpSession对象

Spring MVC

可以直接作为Controller的参数传入:

  1. @RequestMapping(value = "/test", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  2. @ResponseBody
  3. public Map test(HttpSession session, String otherParam) {
  4. //TODO
  5. return null;
  6. }

其它

要获取HttpSession,只需要获取到HttpServletRequest,然后调用HttpServletRequest的getSession方法

1、注解自动注入

  1. @Autowired
  2. private HttpSession session;
  3. @Autowired
  4. private HttpServletRequest request;

2、普通类中获取

  1. HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
  2. request.getSession();
相关推荐
卓怡学长38 分钟前
w202springboot基于B_S架构的图书信息管理系统
java·spring boot·spring·intellij-idea
煎饼皮皮侠40 分钟前
设计一个Web版数据库管理平台(之六):SQL执行监听器 —— 日志、监控与审计
sql·数据库平台
景熙55231 小时前
JDBC 详解:从原理到实战(含完整可运行 Demo)
java·spring·tomcat·mybatis·jdbc
程序猿乐锅1 小时前
一文讲透缓存穿透、击穿和雪崩
java·redis·spring·缓存·mybatis
程序猿乐锅2 小时前
【黑马点评 | 第七篇】Redis 分布式锁的两种实现
java·数据库·redis·分布式·spring·缓存
bksczm3 小时前
MySQL进阶篇之范式及E-R图
数据库·sql·mysql
步行cgn4 小时前
Spring 负责注入的注解详解
java·sql·spring
程序猿乐锅4 小时前
【黑马点评 | 第九篇】秒杀优化-异步实现
java·spring boot·redis·后端·spring·中间件·mybatis
Wx-bishekaifayuan4 小时前
springboot户外登山社交小程序19787-计算机课程设计、毕业设计
spring boot·后端·python·spring·elasticsearch·django·课程设计
大猫和小黄10 小时前
从 Servlet 到 SSM:Java Web 进化史
servlet·java web