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();
相关推荐
回到原点的码农1 小时前
Spring Data JDBC 详解
java·数据库·spring
一勺菠萝丶2 小时前
Flowable + Spring 集成踩坑:流程结束监听器查询历史任务为空 & 获取不到审批意见
java·数据库·spring
spring2997923 小时前
LangChain-08 Query SQL DB 通过GPT自动查询SQL
数据库·sql·langchain
l1t4 小时前
四种python工具包用SQL查询csv和parquet文件的方法比较
大数据·python·sql
V1ncent Chen4 小时前
SQL大师之路 10 连接基础
数据库·sql·mysql·数据分析
sevenlin4 小时前
MySQL数据库(SQL分类)
数据库·sql·mysql
xu_ws5 小时前
Spring-ai项目-deepseek-7-Function Calling(智能客服)
java·人工智能·spring
流水武qin7 小时前
SpringAI多模态的基本使用
java·spring boot·spring·ai
代码派7 小时前
MySQL 慢 SQL 排查这件事,NineData 社区 VS DBeaver/ Navicat 技术分析
数据库·sql·mysql·navicat·数据库管理工具·dbeaver·数据库对比
荧光点星7 小时前
MySQL DQL小结与DCL
sql·mysql