当前位置: 首页 > news >正文

Springboot 项目一启动就获取HttpSession

在 Spring Boot 项目中,HttpSession 是有状态的,通常只有在用户发起 HTTP 请求并建立会话后才会创建。因此,在项目启动时(即应用刚启动还未处理任何请求)是无法获取到 HttpSession 的。

方法一:使用 HttpSessionListener(监听 session 创建)

@Component
public class MySessionListener implements HttpSessionListener {@Overridepublic void sessionCreated(HttpSessionEvent se) {// 当 session 被创建时执行System.out.println("Session created: " + se.getSession().getId());se.getSession().setAttribute("initData", "some value");}@Overridepublic void sessionDestroyed(HttpSessionEvent se) {// 当 session 销毁时执行}
}

## 方法二:使用拦截器或过滤器设置 Session 数据

@Component
public class SessionInitInterceptor implements HandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {HttpSession session = request.getSession();if (session.getAttribute("initData") == null) {session.setAttribute("initData", "initialized on first request");}return true;}
}

并在配置中注册:

@Configuration
public class WebConfig implements WebMvcConfigurer {@Autowiredprivate SessionInitInterceptor sessionInitInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(sessionInitInterceptor);}
}
http://www.xdnf.cn/news/695935.html

相关文章:

  • QT6 关于使用MSVC2019,UI设计师自定义控件的制作和QT Cretor里面调用
  • Redis 用的 Gossip 协议有哪些具体消息?
  • 瓶装燃气送气工如何规范服务?
  • 浅析AI数据采集和标注在运动健康领域的落地应用
  • AD-PCB--元件库介绍及电阻电容模型的创建 DAY4
  • 可变参数函数
  • 74道Node.js高频题整理(附答案背诵版)
  • 记一次 Qwen3-0.6B 微调 内容提取
  • 让爱延续,共筑养老服务产业的美好未来
  • 二重积分 面积微元 微小矩形 dxdy 微小扇形 r * drdθ
  • 动静态库的制作
  • c++ 拷贝构造函数
  • JVM——Truffle:语言实现框架
  • 【机器学习基础】机器学习入门核心算法:朴素贝叶斯(Naive Bayes)
  • Spring AI 1.0 GA 深度解析:构建企业级AI应用的全栈实践指南
  • Linux的基本指令
  • vscode 终端 PATH 和python pip 不对
  • CSS (mask)实现服装动态换色:创意与技术的完美融合
  • HIS换代升级辅助脚手架:数据清洗、人员信息标准化、电子病历接口标准化、多模态影像接口标准化
  • 三级联动获取省市区
  • 8种常见数据结构及其特点简介
  • 排查Oracle文件打开数过多
  • JAVA 笔记
  • 【超详细教程】零基础本地部署DeepSeek-Coder-v2 16B!Ollama+GPU加速,100%跑通!
  • CCLINKIE转PROFINET:让执行器“丝滑”入网!
  • 脑机新手指南(一):BCILAB 脑机接口工具箱新手入门指南
  • 从新安全法到隐患判定标准:特种设备证件管理政策全梳理
  • vben-admin 2.8.0 版本修改 axios响应处理逻辑
  • MySQL:零基础入门(狂神版)
  • PyTorch安装Cuda版本选择