背景:用判断session中的obj对象是否为空做一些业务处理的时候,发现即使把服务重启了,第一次访问,session中的这个对象还是存在的,除非把浏览器关掉再访问。于是怀疑session可能持久化了。
但springboot2.x中server.servlet.session.persistent的默认值是false,是不会持久化的。
但是在使用的时候,重启之后还是会得到obj对象。
偶然发现在配置文件中直接加上
server.servlet.session.persistent=false
就不会持久化了。
在不关浏览器的情况下,做了个实验,步骤如下:
- 不加这个配置,重启,访问,obj对象为null
- 不加这个配置,重启,访问,obj对象不为null
- 不加这个配置,重启,访问,obj对象不为null
- 不加这个配置,重启,访问,obj对象不为null
- 加这个配置,重启,访问,obj对象为null
- 加这个配置,重启,访问,obj对象为null
- 加这个配置,重启,访问,obj对象为null
结论: 即使server.servlet.session.persistent默认值为false,但会持久化,需要在配置文件中重新配置为false,才会不持久化。



