领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多这篇文章由 Vedran Pavić 撰写
我代表社区高兴地宣布 Spring Session 2.0.0.RELEASE 的发布。此版本经历了 2.0.0.M1、2.0.0.M2、2.0.0.M3、2.0.0.M4、2.0.0.M5、2.0.0.RC1、2.0.0.RC2 和 2.0.0.RELEASE 等阶段,总共关闭了 130 多个问题和拉取请求。
您可以在参考文档的 2.0 新特性 部分找到新特性的亮点。详情请参考上面的变更日志链接。
此版本将 Java 8 和 Spring Framework 5.0 作为基线要求。整个代码库现在都基于 Java 8 源代码级别。
Spring Framework 5.0 中引入的响应式编程模型是 2017 年最大的新闻之一,我们很高兴能够通过 Redis `ReactiveSessionRepository` 提供对使用 Spring WebFlux 的 `WebSession` 的管理支持。
以熟悉的 Spring Session 方式,启用 Redis 支持的 `WebSession` 就像以下代码片段一样简单
@EnableRedisWebSession
public class WebSessionConfig {
@Bean
public LettuceConnectionFactory redisConnectionFactory() {
return new LettuceConnectionFactory();
}
}
Spring Boot 用户会很高兴地知道,自 `2.0.0.M6` 里程碑版本 发布以来,已经提供了对响应式 Spring Session 的自动配置支持。
新版本对项目的模块进行了一些重大更改,因为我们已根据存储库实现将 Spring Session 分成了模块。你会发现
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-core</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-hazelcast</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-jdbc</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
作为此更改的一部分,我们已从主存储库中删除了一些 Spring Session 实现。我们现在有 Spring Session Data Geode (GemFire) 和 Spring Session Data MongoDB 的子项目。你会发现
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-gemfire</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-geode</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-mongodb</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
目标是让核心 Spring Session 团队专注于交付新功能,而不是需要了解每个数据存储的来龙去脉。这将允许开发其他模块,而无需核心 Spring Session 团队进行审查。
如果没有社区,我们就无法取得今天的成功。我要感谢所有创建问题和提供反馈的人。
如果您对本版本有任何反馈,欢迎您通过 StackOverflow、GitHub Issues 或评论部分与我们联系。您也可以在 Twitter 上联系 Rob @rob_winch、Joe @joe_grandja 或我 @vedran_pavic。
当然,最好的反馈是 贡献。