如何设置超时时间,如果没有用户活动,会话将过期吗? 我正在寻找码头附近的东西:
ServletContextHandler webappContext = new ServletContextHandler(ServletContextHandler.SESSIONS);
...
webappContext.getSessionHandler().setMaxInactiveInterval(timeout_in_sec);
答案 0 :(得分:0)
您必须自己实现,这取决于您的存储管理器。如果您看最简单的一个
会话存储在并发映射中
private val sessions = ConcurrentHashMap<String, ByteArray>()
相反,您需要使会话期满的东西。例如,您可以使用番石榴缓存 https://github.com/google/guava/wiki/CachesExplained
private val engineCache: Cache<String, ByteArray> = CacheBuilder.newBuilder()
.maximumSize(50)
.expireAfterAccess(30, TimeUnit.MINUTES)
.build()