当前位置: 首页 > wzjs >正文

模板网站建设珠海东莞搜索网络优化

模板网站建设珠海,东莞搜索网络优化,华企网站建设推广优化,玉环住房与城乡建设规划局网站SpringBoot整合sa-token,Redis:解决重启项目丢失登录态问题 🔥1. 痛点直击:为什么登录状态会消失?2.实现方案2.1.导入依赖2.2.新增yml配置文件 3.效果图4.结语 😀大家好!我是向阳🌞&…

SpringBoot整合sa-token,Redis:解决重启项目丢失登录态问题

  • 🔥1. 痛点直击:为什么登录状态会消失?
  • 2.实现方案
    • 2.1.导入依赖
    • 2.2.新增yml配置文件
  • 3.效果图
  • 4.结语

😀大家好!我是向阳🌞,一个想成为优秀全栈开发工程师的有志青年!	
📔今天来说一说如何来解决SpringBoot整合sa-token,Redis:解决重启项目丢失登录态问题。

🔥1. 痛点直击:为什么登录状态会消失?

我们上一节当中,我们把token保存到了local storage当中,每次发起请求的时候,请求头会携带上这个token去请求后端,来校验我们的用户身份,但是当我们服务器端重启时,我们的token和session会话就会丢失掉了,我们就无法识别到用户对应的会话和token。

sa-token存储token的原理是,如果你没有配置redis,token和对应的session会话那么就会存到本地的JVM当中,所以这也就是每次需要重新登录的原因。

Sa-Token + Redis组合拳 通过将会话数据持久化到Redis,实现:

✔️ 服务重启无感登录

✔️ 分布式会话一致性

✔️ 故障恢复零感知

2.实现方案

2.1.导入依赖

我们这里直接实现的是权限缓存与业务缓存分离的依赖包,如果你不需要分离,不要导入sa-token-alone-redis,请导入下面这个依赖包。

<!-- Sa-Token 整合 RedisTemplate -->
<dependency><groupId>cn.dev33</groupId><artifactId>sa-token-redis-template</artifactId><version>1.41.0</version>
</dependency>

权限缓存与业务缓存分离的依赖包。
注意:导入这个依赖包后,不要导入上面那个依赖包了,权限缓存与业务缓存分离的依赖包里面包含sa-token-redis-template这个依赖包,同时导入会引发冲突问题。

<!-- Sa-Token插件:权限缓存与业务缓存分离 -->
<dependency><groupId>cn.dev33</groupId><artifactId>sa-token-alone-redis</artifactId><version>1.41.0</version>
</dependency>

导入通用依赖包,redis连接池(必须!!!),还有自定义序列化方案,官方推荐使用jackson,当然你还可以去集成fastjson、fastjson2。
注意:目前 Sa-Token-Alone-Redis 仅对以下插件有 Redis 分离效果:

  • sa-token-redis
  • sa-token-redis-jackson
  • sa-token-redis-fastjson
  • sa-token-redis-fastjson2
<!-- 提供 Redis 连接池 -->
<dependency><groupId>org.apache.commons</groupId><artifactId>commons-pool2</artifactId><version>1.41.0</version>
</dependency>
<dependency><groupId>cn.dev33</groupId><artifactId>sa-token-redis-jackson</artifactId><version>1.41.0</version>
</dependency>

2.2.新增yml配置文件

我们来新增redis配置文件 和 sa-token权限缓存与业务缓存分离的配置。
注意:我这里使用的是springboot3,如果你使用的是springboot2版本,redis配置去掉data这一层,也就是spring.redis.port。

sa-token:# 与前两篇文章的配置保持一致...# 新增下面配置alone-redis:# Redis数据库索引(默认为0)database: 12# Redis服务器地址host: localhost# Redis服务器连接端口port: 6379# 连接超时时间timeout: 10s
# springboot3 如果是springboot2,去掉data这一层
spring:data:redis:port: 6379host: localhostconnect-timeout: 10sdatabase: 11

3.效果图

接下来我们启动项目正常登录就可以了,redis框架会自动为我们保存用户的token以及登录态,可以看到保存的用户登录态是在12号库中,与我们上面配置的一致,与业务缓存是隔离开的。

在这里插入图片描述

4.结语

到这里我们就成功集成了redis,让redis保持我们用户的登录态,我们项目在每次重启时,前端的就不用每次去重新登录。

下一章,我们来聊聊sa-token框架的路由拦截鉴权。

——👦[作者]:向阳256
——⏳[更新]:2025.4.7
——🥰本人技术有限,如果有不对指正需要更改或者有更好的方法,欢迎到评论区留言。
http://www.dtcms.com/wzjs/446104.html

相关文章:

  • 门户网站建设专业站长工具网址查询
  • 南通网站建设top品牌建设的五个要素
  • 做网站先建立模型软件定制开发平台
  • 政府类网站开发整站seo教程
  • 网站设计包含哪些技术百度热搜高考大数据
  • 国外网站排名 top100域名网
  • 网站怎么做单页网站百度百科
  • 东莞建筑公司招聘信息湖南竞价优化哪家好
  • 驻马店网站优化怎么找精准客户资源
  • 网站建设-好发信息网推广图片大全
  • 网站建设好吗公众号怎么推广
  • 用vs做网站如何连接数据库今天有哪些新闻
  • 织梦网站怎么做下载地址web免费网站
  • 怎么做社交网站ps培训
  • flash可以做网站郑州网络推广大包
  • 微信第三方网站开发教程网站平台做推广
  • 注册资金1000万实际需要多少钱网站排名优化软件
  • 简单网站制作教程百度手机助手网页
  • 电影网站怎么做流量在线seo诊断
  • 网站关键词选取的步骤和方法泉州seo报价
  • 不花钱自己可以做网站吗云速seo百度点击
  • love域名做的网站如何自创网站
  • 手机网站开发者工具2024最火的十大新闻
  • 英孚做网络作业的网站企业宣传片视频
  • 永州网站建设服务永久免费建站系统
  • mui做浏览器网站跳转深圳网络营销策划
  • 济南专业做公司网站的机构广东宣布即时优化调整
  • 广州网站建设有哪些如何做网销
  • 美业网站建设竞价排名的弊端
  • 国家卫生计生委建设监管网站东营网站建设制作