Spring Session提供了用于管理用户会话信息的API和实现。

特征

Spring Session使支持集群会话变得很简单,而不必依赖于特定于应用程序容器的解决方案。它还提供与以下内容的透明集成:

  • HttpSession允许以应用程序容器(即Tomcat)中立的方式替换HttpSession,并支持在标头中提供会话ID以与RESTful API一起使用

  • WebSocket提供了在接收WebSocket消息时保持HttpSession存活的功能

  • WebSession允许以应用程序容器中立的方式替换Spring WebFlux的WebSession

模组

Spring Session由以下模块组成:

  • Spring Session Core-提供核心的Spring Session功能和API

  • Spring Session Data Redis-提供由Redis支持的SessionRepository和ReactiveSessionRepository实现以及配置支持

  • Spring Session JDBC-提供由关系数据库支持的SessionRepository实现和配置支持

  • Spring Session Hazelcast-提供由Hazelcast支持的SessionRepository实现和配置支持

将Spring Session添加到您的构建中

该项目使用Maven BOM(物料清单)和发行火车来协调版本,例如Apple-SR8Bean-SR3等。

在Maven中使用BOM

使用Maven,您需要首先导入BOM表:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.springframework.session</groupId>
      <artifactId>spring-session-bom</artifactId>
      <version>Bean-SR8</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>
  • 本示例使用的是Bean-SR8 ,但是您插入了所需的发行版。

  • 注意使用部分和import范围。

接下来,将依赖项添加到项目中,而无需

<dependencies>
  <dependency>
    <groupId>org.springframework.session</groupId>
    <artifactId>spring-session-data-redis</artifactId>
  </dependency>
</dependencies>

在Gradle中使用BOM

由于Gradle不提供对Maven BOM的一流支持,因此您可以使用Spring的依赖管理插件

从Gradle插件门户应用插件(如果需要,请更新版本):

plugins {
  id 'io.spring.dependency-management' version '1.0.6.RELEASE'
}

然后使用它导入BOM表:

dependencyManagement {
  imports {
    mavenBom 'org.springframework.session:spring-session-bom:Bean-SR8'
  }
}

最后,将不带版本的依赖项添加到项目中:

dependencies {
  compile 'org.springframework.session:spring-session-data-redis'
}

快速开始

使用Spring Initializr引导您的应用程序。

文献资料

每个Spring项目都有自己的项目 。它详细说明了如何使用项目功能以及使用它们可以实现的功能。
2.2.0 RC1 PRE 参考文件 API文件
2.1.10 快照 参考文件 API文件
2.1.9 GA 参考文件 API文件
玉米RC1 PRE 参考文件 API文件
玉米制成的快照 快照 参考文件 API文件
Bean-SR8 GA 参考文件 API文件
Bean-Build-Snapshot 快照 参考文件 API文件