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();
相关推荐
架构源启几秒前
Spring AI进阶系列(13)- 安全最佳实践(进阶版):Prompt注入防护、数据泄露预防与合规审计实战
人工智能·安全·spring
韶博雅2 分钟前
oracle优化用到的sql
sql·oracle·ffmpeg
REDcker7 分钟前
Linux文件IO底层原理详解
linux·运维·spring
鸽芷咕21 分钟前
金仓数据库标量子查询消除:一条SQL从32秒优化到24毫秒
数据库·sql
兔子宇航员030130 分钟前
HiveSQL 中 NULL 与空字符串的区别与注意事项
数据库·数据仓库·sql
保定公民38 分钟前
Oracle 层次查询(CONNECT BY)完全指南:从入门到精通
数据库·sql·oracle·达梦数据库·层次查询
霸道流氓气质40 分钟前
Spring AI Alibaba 学习路线图:从入门到精通
人工智能·学习·spring
闪电悠米1 小时前
黑马点评-优惠券秒杀-03_basic_seckill_and_oversell
java·数据库·spring boot·spring·缓存·oracle·面试
逍遥德1 小时前
PostgreSQL --- 数组函数详解
数据库·sql·postgresql