Springboot如何实现Redis与SpringSession的session共享配置?

2026-05-21 03:453阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计625个文字,预计阅读时间需要3分钟。

Springboot如何实现Redis与SpringSession的session共享配置?

官方文档介绍 - Spring Session:https://docs.spring.io/spring-session/docs/current/reference/5/

1. Maven 依赖: xml org.springframework.boot spring-boot-starter-parent 2.1.10.RELEASE

 官网介绍 - spring:session:docs.spring.io/spring-session/docs/current/reference/html5/

1、Mave依赖

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.10.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <!--spring session 与redis应用基本环境配置,需要开启redis后才可以使用,不然启动Spring boot会报错 --> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> </dependency> <!-- 高版本redis的lettuce需要commons-pool2 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>2.7.0</version> </dependency>

2、参数配置

2.1 redis 配置:

Springboot如何实现Redis与SpringSession的session共享配置?

######################## application.properties########################### spring.redis.database=1 spring.redis.host=127.0.0.1 spring.redis.port=6379 spring.redis.password= # 连接池最大连接数 spring.redis.pool.max-active=8 spring.redis.pool.max-wait=-1 # 连接池中的最大空闲连接 spring.redis.pool.max-idle=8 # 连接池中的最小空闲连接 spring.redis.pool.min-idle=0 # 连接超时时间(毫秒) spring.redis.timeout=0 ########################建议使用yml文件,则如下配置######################### spring: redis: database: 0 host: 127.0.0.1 jedis: pool: #最大连接数据库连接数,设 0 为没有限制 max-active: 8 #最大等待连接中的数量,设 0 为没有限制 max-idle: 8 #最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。 max-wait: -1ms #最小等待连接中的数量,设 0 为没有限制 min-idle: 0 #lettuce 是一个可以做缓冲池的插件,也可以不用,使用pool为三级参数,即 lettuce: pool: max-active: 8 max-idle: 8 max-wait: -1ms min-idle: 0 shutdown-timeout: 100ms password: port: 6379

3、设置Redis支持的Spring Session

3.1 方案一  基于springboot配置

server: port: 9090 servlet: session: #配置session的有效时间为30天 timeout: 2592000 spring: session: store-type: redis redis: flush-mode: on_save #添加后,redis中的key为spring:session:myproject namespace: myproject

3.2 方案二 注解方式

package com.xmhx.cnlife.base.config; import org.springframework.session.data.redis.RedisFlushMode; import org.springframework.session.data.redis.config.annotation.web.www.cnblogs.com/yingsong/p/9857591.html

有关想了解存放在redis里的数据存储结构,可查看此文: blog.csdn.net/j3T9Z7H/article/details/80046307

深入理解: blog.csdn.net/koflance/article/details/66676859?utm_source=itdadao&utm_medium=referral

参考: springboot整合三 共享session,集成springsession

SpringBoot2.0整合redis

本文共计625个文字,预计阅读时间需要3分钟。

Springboot如何实现Redis与SpringSession的session共享配置?

官方文档介绍 - Spring Session:https://docs.spring.io/spring-session/docs/current/reference/5/

1. Maven 依赖: xml org.springframework.boot spring-boot-starter-parent 2.1.10.RELEASE

 官网介绍 - spring:session:docs.spring.io/spring-session/docs/current/reference/html5/

1、Mave依赖

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.10.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <!--spring session 与redis应用基本环境配置,需要开启redis后才可以使用,不然启动Spring boot会报错 --> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> </dependency> <!-- 高版本redis的lettuce需要commons-pool2 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>2.7.0</version> </dependency>

2、参数配置

2.1 redis 配置:

Springboot如何实现Redis与SpringSession的session共享配置?

######################## application.properties########################### spring.redis.database=1 spring.redis.host=127.0.0.1 spring.redis.port=6379 spring.redis.password= # 连接池最大连接数 spring.redis.pool.max-active=8 spring.redis.pool.max-wait=-1 # 连接池中的最大空闲连接 spring.redis.pool.max-idle=8 # 连接池中的最小空闲连接 spring.redis.pool.min-idle=0 # 连接超时时间(毫秒) spring.redis.timeout=0 ########################建议使用yml文件,则如下配置######################### spring: redis: database: 0 host: 127.0.0.1 jedis: pool: #最大连接数据库连接数,设 0 为没有限制 max-active: 8 #最大等待连接中的数量,设 0 为没有限制 max-idle: 8 #最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。 max-wait: -1ms #最小等待连接中的数量,设 0 为没有限制 min-idle: 0 #lettuce 是一个可以做缓冲池的插件,也可以不用,使用pool为三级参数,即 lettuce: pool: max-active: 8 max-idle: 8 max-wait: -1ms min-idle: 0 shutdown-timeout: 100ms password: port: 6379

3、设置Redis支持的Spring Session

3.1 方案一  基于springboot配置

server: port: 9090 servlet: session: #配置session的有效时间为30天 timeout: 2592000 spring: session: store-type: redis redis: flush-mode: on_save #添加后,redis中的key为spring:session:myproject namespace: myproject

3.2 方案二 注解方式

package com.xmhx.cnlife.base.config; import org.springframework.session.data.redis.RedisFlushMode; import org.springframework.session.data.redis.config.annotation.web.www.cnblogs.com/yingsong/p/9857591.html

有关想了解存放在redis里的数据存储结构,可查看此文: blog.csdn.net/j3T9Z7H/article/details/80046307

深入理解: blog.csdn.net/koflance/article/details/66676859?utm_source=itdadao&utm_medium=referral

参考: springboot整合三 共享session,集成springsession

SpringBoot2.0整合redis