SpringSession的使用

本文介绍了如何使用SpringSession在多个服务间共享session,核心原理是将session数据存储到Redis中。步骤包括添加依赖、配置session存储类型、启用@EnableRedisHttpSession注解,以及自定义Cookie的设置方法。通过这个方法,可以在不同服务间实现会话状态的统一管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SpringSession完成多服务session共享

1、核心原理

在这里插入图片描述

2、使用步骤

官网文档地址Spring Session - Spring Boot

在已经集成过redis的每个服务都进行以下操作:

1、导入依赖

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

2、配置文件加入session缓存类型

spring.session.store-type=redis # Session store type.

跟据自己的需求按需配置其他可选项:

server.servlet.session.timeout= # Session timeout. If a duration suffix is not specified, seconds is used.
spring.session.redis.flush-mode=on_save # Sessions flush mode.
spring.session.redis.namespace=spring:session # Namespace for keys used to store sessions.

3、在启动类上加入注解@EnableRedisHttpSession开启spring session
4、此时session就不是在内存中存着了,而是在redis中,多服务可以共享了
5、如果需要修改session的作用域、名称等,需要添加配置类,如下图:
在这里插入图片描述

3、补充一个自定义cookie的用法

	@RequestMapping(value = "/test", method = RequestMethod.GET)
	public HttpResponse test(HttpServletResponse response, @CookieValue("mycookie") String mycookie){
	    response.addCookie(new Cookie("mycookie","123"));
	    。。。
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值