无码一区二区三区高清在线观-无码一区二区三区高清在线-无码一区二区三区电影-无码一区二区三区不卡av-无码一区二区三区不卡-无码一区二区三区va在线播放

萬能百科  > 游戲數碼?  > 

SpringBoot整合SpringSeesion實現Redis緩存

2022-02-23   

使用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錯亂的現象。

詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫學等領域),建議您咨詢相關領域專業人士。

標簽

主站蜘蛛池模板: 欧美极品一区 | 中文字幕一二 | 综合久久国产对白 | 国产成人亚洲影院在线播放 | 国产欧美性综合视频性刺激 | 国产一区二区激情戏 | 91蜜桃精品国产91久久 | 影音先锋av天堂 | 亚洲v无码专区国产观看一区 | 欧美日韩国产 | 欧美高潮乱码电影日本理伦片午夜 | 久久无码专区国产精品s | 免费的很黄很污的全部视频 | 免费人妻精品一区 | 久久久亚洲欧洲日产国码αv | 日本妈妈黄色片 | 99久久无码一区人妻a片潘金莲 | 丁香婷婷色五月激情综合 | 久久精品国产99国产精品 | 国产精品巨作无遮拦 | 人妻夜夜爽天天爽三区麻豆av | 久久99久久精品97久久综合 | 三级免费黄 | 久久亚洲国产精品一区二区三区 | 亚洲区一区二区 | 国产精华液网站W | 99久久精品免费看国产99 | 无码八A片人妻少妇久久 | 国产成人不卡亚洲精品91 | 成人国产在线欧 | 无码日本大胆XXXX | av毛片| 日韩成人免费 | 亚洲伦理网站 | 国产福利视频在线观看福利 | 波多野结衣中文字幕一区二区三 | 久久成人福利视频 | 久久久国产精品福利免费 | 三级在线国产 | 99欧美在线视频 | 18国产丰满xxx毛片成人内射国产免 |