On this page
11. 升级到 2.x
使用新的主要发行版,Spring Session 团队借此机会进行了一些非被动的更改。这些更改的重点是改善和协调 Spring Session 的 API,以及删除不推荐使用的组件。
11.1 基准更新
Spring Session 2.0 需要 Java 8 和 Spring Framework 5.0 作为基线,因为它的整个代码库现在都基于 Java 8 源代码。请参阅升级到 Spring Framework 5.x指南以获取有关升级 Spring Framework 的参考。
11.2 更换和卸下的模块
作为项目拆分模块的一部分,现有的spring-session
已替换为spring-session-core
模块。 spring-session-core
模块仅包含一组通用的 API 和组件,而其他模块则包含相应SessionRepository
的实现以及与该数据存储相关的功能。这适用于以前是简单的依赖项聚合器帮助程序模块的几个现有模块,但实际上采用新的模块安排来实现该实现:
Spring Session 数据 Redis
Spring Session JDBC
Spring Session Hazelcast
同样,以下模块已从主项目存储库中删除:
Spring Session 数据 MongoDB
Spring Session 数据 GemFire
请注意,这两个已移至单独的存储库,并且即使在已更改的工件名称下也将 continue 可用:
11.3 替换和删除的软件包,类和方法
ExpiringSession
API 已合并到Session
APISession
API 已得到增强,可以充分利用 Java 8Session
API 已得到changeSessionId
支持的扩展SessionRepository
API 已更新,可以更好地与 Spring Data 方法命名约定保持一致如果没有基础
Session
对象,则无法再构建AbstractSessionEvent
及其子类RedisOperationsSessionRepository
使用的 Redis 名称空间现在是完全可配置的,而不是部分可配置的Redis 配置支持已更新,以避免注册特定于 Spring 会话的
RedisTemplate
beanJDBC 配置支持已更新,以避免注册特定于 Spring 会话的
JdbcTemplate
bean先前不推荐使用的类和方法已在整个代码库中删除
11.4 放弃支持
作为对HttpSessionStrategy
所做的更改的一部分,它与响应世界中的对应对象保持一致,已删除了在单个浏览器实例中 Management 多个用户会话的支持。将来的发行版中正在考虑引入新的 API 来代替此功能。