java - spring.session.timeout 与 server.servlet.session.timeout

标签 java spring spring-boot spring-mvc application.properties

我希望使用 Spring boot 和 Tomcat 扩展 Spring MVC 应用程序中的用户 session 。查看文档似乎有 2 个相关 properties :

server.servlet.session.timeout
spring.session.timeout

大多数示例似乎都建议使用server.servlet.session.timeout; spring.session.timeout 的目的是什么?应该使用哪一个来延长用户 session ?

最佳答案

spring.session.timeout 是名为 Spring Session 的 Spring 子项目的属性。 。如果未设置,它将回退到 server.servlet.session.timeout

简而言之,Spring Session 允许您将 HttpSession 存储在 RDBMS/Redis/Hazelcast Cluster/MongoDB 中,而不是 Tomcat 内的内部映射。因此, session 以与容器无关的方式存储,并使 session 集群更容易,因为您不需要配置 Tomcat 集群。

因此,如果您不使用 Spring Session ,则应该使用 server.servlet.session.timeout

关于java - spring.session.timeout 与 server.servlet.session.timeout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57679900/

相关文章:

java - 由于未找到 DayOfWeek,Quarkus 测试在 native 中失败

java - Hibernate 和约束主键抛出 QueryException

Java 长比较和转换

java - Maven 存储库中 4.1.1 中的 spring-security-web 在哪里?

java - 使用 RuntimeExceptions 和 CheckedExceptions

java - 实体关系未正确填充

java - 添加mvc后Spring MVC页面无法访问:resources

java - 如何在 Spring Boot 中存储一个 xml 节点的多个值?

java - 如果我的库也可能有带有我不知道的 Order 注释的 ControllerAdvices,我应该在 ControllerAdvice 上使用什么 order 值?

java - 无法使用 spring boot jpa 构建 Hibernate SessionFactory