SpringBoot整合SpringSeesion实现Redis缓存
2023-01-04 19:19:04来源:网络转载作者:匿名 阅读量:132 字体:大 中 小
使用Spring Boot开发项目时我们经常需要存储Session,因为Session中会存一些用户信息或者登录信息。传统的web服务是将session存储在内存中的,一旦服务挂了,session也就消失了,这时候我们就需要将session存储起来,而Redis就是用来缓存seesion的一种非关系型数据库,我们可以通过配置或者注解的方式将Spring Boot和Redis整合。而在分布式系统中又会涉及到session共享的问题,多个服务同时部署时session需要共享,Spring Session可以帮助我们实现这一功能。将Spring Session集成到Spring Boot框架中并使用Redis进行缓存是目前非常流行的解决方案,接下来就跟着小编一起学习吧。
IntelliJ IDEA
01、首先我们创建一个Spring Boot 2.x的项目,在application.properties配置文件中添加Redis的配置,Spring和Redis的整合可以参考小编其他的文章,此处不再详解。我们设置服务端口server.port为8080端口用于启动第一个服务。
02、接下来我们需要在pom文件中添加spring-boot-starter-data-redis和spring-session-data-redis这两个依赖,spring-boot-starter-data-redis用于整合Spring Boot和Redis,spring-session-data-redis集成了spring-session和spring-data-redis,提供了session与redis的整合方案。
03、接下来我们创建一个配置类RedisSessionConfig,这个类使用@Configuration注解表明这是一个配置类。在这个类上我们同时添加注解@EnableRedisHttpSession,表示开启Redis的Session管理。如果需要设置失效时间可以使用@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 3600)表示一小时后失效。若同时需要设置Redis的命名空间则使用@EnableRedisHttpSession(maxInactiveIntervalInSeconds=3600, redisNamespace="{spring.session.redis.namespace}") ,其中{spring.session.redis.namespace}表示从配置文件中读取这个命名空间。
04、配置完成后我们写一个测试类SessionController,在这个类中我们写两个方法,一个方法用于往session中存数据,一个用于从session中取数据,代码如下图所示,我们存取请求的url。启动类非常简单,一般都是通用的,我们创建一个名为SpringbootApplication的启动类,使用main方法启动。
05、接下来我们使用Postman分别请求上面两个接口,先请求存数据接口,再请求取数据接口,结果如下图所示,我们可以看到数据已从redis中取出。另外需要注意sessionId的值,这是session共享的关键。
06、为了验证两个服务是否共享了session,我们修改项目的配置文件,将服务端口server.port改为8090,然后再启动服务。此时我们不必在请求存数据的接口,只需要修改请求端口号再一次请求取数据的接口即可。由下图可以看到两次请求的sessionId值相同,实现了session的共享。
07、以上我们完成了SpringBoot整合SpringSeesion实现Redis缓存的功能,在此我们还要推荐一个Redis的可视化工具RedisDesktopManager,我们可以配置Redis数据库的连接,然后便可以非常直观地查看到存储到Redis中的session了,如下图所示,session的命名空间是share,正是从配置文件中读取到的。
特别提示
如果Redis服务器是很多项目共用的,非常建议配置命名空间,否则同时打开多个项目的浏览器页面可能会导致session错乱的现象。
免责声明:
本文《SpringBoot整合SpringSeesion实现Redis缓存》版权归原作者所有,内容不代表本站立场!
如本文内容影响到您的合法权益(含文章中内容、图片等),请及时联系本站,我们会及时删除处理。
推荐阅读

天龙八部私服如何安装?
天龙八部游戏 01、想要下载安装天龙八部私服,就要先把正式服更新到最新的版本才可以。 02、更新好以后,打开搜狗搜索输入:天龙八部私服,点击搜索。 03、再搜索出来的结果中选择一个进入,点击下载...
阅读: 687

dnf90级ss哪个图爆率高?
01、首推当然是时间广场,单个房间距离短,可高速刷图。 02、其次就是魔界裂缝,每天可以刷三次,建议每天刷。 03、最后就是地轨中心区域的时空裂缝,但是每个图会多消耗两张票。 04、最后一个就是...
阅读: 611

LOLS7劫影流之主中单最新出装天赋符文加点
01、劫是一位爆发型的中单英雄,经常在团战之中秒杀掉对面的主要输出然后让团战大获全胜。召唤师技能一般是闪现和点燃 02、他的Q技能是丢出一个飞镖,W技能召唤一个影分身,E技能手里剑范围伤害,R技能标...
阅读: 662

魔兽世界7.0如何快速升1-110级
01、首先是选择种族,随后开始游戏。1到15级只能在新手村里做新手任务,只有做完新手任务才能走出新手村,开始魔兽世界的神奇冒险。 02、15级到70级又两种选择:第一种:不做主线疯狂刷地下城,升级快...
阅读: 634

吞食天地2 景帝墓迷宫图文攻略
01、景帝墓迷宫是这个游戏中最困难的迷宫,不过第一关还是比较简单,没什么难度,一直往右走即可。 02、第二关比较复杂,往前走两个路口右转,直走第二个路口左转,直走第三个路口左转,直走第二个路口左转,...
阅读: 1078

赛尔号谱尼怎么打
01、首先需要我们打开星际地图,选择太空站左翼。 02、将如图所示的这两个灯点亮为绿色,未点亮时为蓝色。 03、进入中间的通道。 04、最终到达谱尼所在的神秘领域。 05、要想得到谱尼,必须打...
阅读: 1072

穿越火线刷等级方法技巧介绍
电脑01、刷雷的意思就是刷经验,在穿越火线的不同频道里看一下,频道里面有名字为刷雷房的房间,如果这些房间还没有开始游戏,你点击加入游戏,然后等待一会而就开始游戏了,你进入游戏之后只需要准备手雷在游戏一...
阅读: 938

LOL CF 您的游戏环境异常 请重启机器后再试
电脑,CF LOL01、有的时候玩游戏正玩的开心,突然就弹出这样一个提示,我们应该先重启一下电脑,看电脑能不能解决这个问题。 02、如果解决不了,那么我们要检查一下自己的windows是不是最新的,...
阅读: 752

三国群英传1攻略
01、在一开始选择角色的时候,推荐选择刘备,因为难度没有那么高,在初期的时候就进行武将探索,如果运气比较好的话能够召到一个人。 02、在游戏中,不同兵种之间的对抗是十分重要的,比如弓兵会克制枪兵,枪...
阅读: 875

剑三世界boss怎么打
01、一般在世界boss刷新之前玩家们就会聚集到刷新点,这个时候要注意了,攻击模式不要切换成“阵营模式”了,这样很容易造成误伤,导致自己不知道是被玩家杀死的还是BOSS杀死的。 02、一些玩家的电脑...
阅读: 813
热门文章
1.网上淘宝qt兼职刷信誉靠谱吗?是真的吗
- 1

- 网上淘宝qt兼职刷信誉靠谱吗?是真的吗
- 2022-12-14
- 1
2.微信小程序开发教程---第一个小程序
- 2

- 微信小程序开发教程---第一个小程序
- 2022-12-14
- 2
3.如何让文章获得高阅读量?
- 3

- 如何让文章获得高阅读量?
- 2022-12-14
- 3
4.如何掌握网络营销策略?
- 4

- 如何掌握网络营销策略?
- 2022-12-14
- 4
5.如何学习好网络营销?
- 5

- 如何学习好网络营销?
- 2022-12-14
- 5
6.如何做好网络营销推广?
- 6

- 如何做好网络营销推广?
- 2022-12-14
- 6
7.微信公共号群发信息详细教程
- 7

- 微信公共号群发信息详细教程
- 2022-12-14
- 7
8.新换的手机号不能绑定支付宝怎么办
- 8

- 新换的手机号不能绑定支付宝怎么办
- 2022-12-14
- 8
9.怎么在网上购买平安车险
- 9

- 怎么在网上购买平安车险
- 2022-12-14
- 9
10.天正2015(T20)的安装与破解
- 10

- 天正2015(T20)的安装与破解
- 2022-12-14
- 10
最近更新

怎么将wps输出为pdf的文字水印设置为单行
2025-04-26

Ubuntu 20.04新增仓颉输入法
2025-04-26

950显卡能吃鸡吗
2025-04-27

扫描件是什么格式的
2025-04-26

win7怎么设置屏幕休眠密码(win7屏幕保护设置密码)
2025-04-26

电脑怎么删除桌面图标 笔记本电脑如何删除桌面上的图标
2025-04-26

怎么用vlookup匹配数据?
2025-04-26

嗜睡说明了什么问题
2022-12-21

入睡很困难该怎么办
2022-12-20

发质不好可以怎么办
2022-12-21
