服务在用户登录后,如果用户隔一段时间没有与服务进行交互(即不在页面上做任何动作),突然做动作时:
ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServlet request = requestAttributes.getRequest();
第二步获取到的request中的session就为null了,这是为什么?是因为session超时了吗?
(ps:如果用户一直有在页面上做操作,就不会为null)
session 是有过期时间的。。。
你可以设置session过期时间长一点
当最近一次访问的时候开始计时,每刷新一次重写开始计时。当隔了很久的时间,没有访问这个session后,这个session就要被清理了。session有过期时间,session什么时候过期,要看服务端配置,这个是有默认配置的
是的,用户会话在连接到服务器后长时间未运行,超过规定时间,则用户会话session将被清空或收
session默认是三十分钟过期