Spring Session 2.1.2.RELEASE 官方文档翻译

Spring Session提供核心API和实现,用于集群会话管理和透明集成HttpSession。2.0版支持Java 8和Spring Framework 5,新增Redis的ReactiveSessionRepository,模块化设计,性能提升。集成包括Redis、JDBC、Hazelcast,支持WebSocket和WebSession。Spring Session利用Servlet过滤器替换HttpSession实现,支持RESTful API和会话监听。提供详细的示例和指南,帮助开发者轻松集成。
摘要由CSDN通过智能技术生成

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

Spring Session由以下模块组成:

  • Spring Session Core - 提供核心Spring会话功能和api
  • Spring Session Data Redis -  提供由Redis和配置支持支持的SessionRepository和ReactiveSessionRepository实现
  • Spring Session JDBC - 提供由关系数据库和配置支持支持的SessionRepository实现
  • Spring Session Hazelcast - 提供由Hazelcast和配置支持支持的SessionRepository实现

1. Introduction

Spring Session使得支持集群会话而不需要绑定到特定于应用程序容器的解决方案变得非常简单。它还提供透明的集成与:

  • HttpSession   - 允许在应用程序容器(即Tomcat)中以中立的方式替换HttpSession,支持在header中提供会话id来使用RESTful api
  • WebSocket    -   提供在接收WebSocket消息时保持HttpSession活动的能力
  • WebSession    -   允许以应用程序容器中立的方式替换Spring WebFlux的web会话

2. What’s New in 2.0

  • 升级到Java 8和Spring Framework 5作为基线
  • 增加了对使用Redis ReactiveSessionRepository管理Spring WebFlux的web会话的支持
  • 提取SessionRepository实现以分离模块
  • 改进的会话和SessionRepository api
  • 改进和协调了对所有受支持会话存储的配置支持
  • 增加了使用SessionCookieConfig配置默认CookieSerializer的支持
  • 大量的性能改进和bug修复

3. Samples and Guides (Start Here) 示例和指南(从这里开始)

如果您想开始使用Spring Session,最好的起点是我们的示例应用程序。

Table 1. Sample Applications using Spring Boot 

Source Description Guide

HttpSession with Redis

演示如何使用Spring会话将HttpSession替换为Redis。

HttpSession with Redis Guide

HttpSession with JDBC

演示如何使用Spring会话将HttpSession替换为关系数据库存储。

HttpSession with JDBC Guide

Find by Username

演示如何使用Spring Session按用户名查找会话。

Find by Username Guide

WebSockets

演示如何在WebSockets中使用Spring会话。

WebSockets Guide

WebFlux

演示如何使用Spring会话将Spring WebFlux的web会话替换为Redis。

TBD

HttpSession with Redis JSON serialization

演示如何使用JSON序列化使用Spring Session将HttpSession替换为Redis。

TBD

4. Spring Session Modules

在Spring Session 1.x Spring会话的所有SessionRepository实现都在 spring-session工件中可用。虽然方便,但这种方法不能长期持续,因为项目中添加了更多的特性和SessionRepository实现。

从Spring Session 2.0开始,项目被分割成Spring Session核心模块和其他几个模块,这些模块承载与特定数据存储相关的SessionRepository实现和功能。Spring Data的用户会发现这种安排很熟悉,Spring会话核心模块扮演的角色相当于Spring Data Commons,并为包含特定数据存储实现的其他模块提供核心功能和api。作为分割的一部分,Spring Session Data MongoDB和Spring Session Data GemFire模块被移动到不同的存储库中,因此项目的存储库/模块的情况如下:

最后,Spring Session现在还提供了Maven BOM(如“物料清单”)模块,以帮助用户解决版本管理问题:

5. HttpSession Integration  httpsession 集成

Spring Session提供了与HttpSession的透明集成。这意味着开发人员可以使用Spring Session支持的实现来切换HttpSession实现。

5.1. Why Spring Session & HttpSession?

我们已经提到Spring Session提供了与HttpSession的透明集成,但是我们从中得到了什么好处呢?

  • Clustered Sessions -  Spring Session使得支持集群会话而不需要绑定到特定于应用程序容器的解决方案变得非常简单。
  • RESTful APIs - Spring Session允许在header中提供会话id来使用RESTful api

5.2. HttpSession with Redis

通过在使用HttpSession的任何东西之前添加Servlet过滤器,可以将Spring会话与HttpSession一起使用。你可以选择启用这两个:

5.2.1. Redis Java Based Configuration

本节描述如何使用基于Java的配置使用Redis来支持HttpS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值