Spring Session 2.0.0 发布

发布 | Rob Winch | 2018 年 1 月 16 日 | ...

本文作者为 Vedran Pavić

我谨代表社区,非常高兴地宣布 Spring Session 2.0.0.RELEASE 的发布。该版本经过了 2.0.0.M12.0.0.M22.0.0.M32.0.0.M42.0.0.M52.0.0.RC12.0.0.RC22.0.0.RELEASE 的迭代,总共关闭了 130 多个问题和拉取请求。

Spring Session 2.0 的新特性

您可以在参考文档的 What’s New 2.0 部分找到新特性的亮点。有关详细信息,请参阅上方的发布说明链接。

要求

此版本将 Java 8 和 Spring Framework 5.0 作为基线要求。整个代码库现在都基于 Java 8 的源代码级别。

Spring WebFlux 支持

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 用户会高兴地知道,响应式 Spring Session 的自动配置支持自 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 团队审查的情况下进行。

贡献

没有社区的支持,我们就无法成为今天如此成功的项目。我想感谢所有提交 issue 和提供反馈的人。

请提供反馈

如果您对本次发布有任何反馈,我鼓励您通过 StackOverflowGitHub Issues 或评论区与我们联系。您也可以在 Twitter 上联系 Rob @rob_winch、Joe @joe_grandja 或我 @vedran_pavic

当然,最好的反馈形式是 贡献

项目站点 | 参考 | 帮助

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有