Spring Session
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-SR8
, Bean-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'
}