在SpringBoot 使用Redis存储Session

 引入依赖

<spring-boot-starter.version>1.5.6.RELEASE</spring-boot-starter.version>
<jedis.version>2.9.0</jedis.version>

关于第一个依赖是一定要引入的但是第二个和第三个依赖就要看你是否会使用Redis数据库,但是尽量加入
<dependency>
   <groupId>org.springframework.session</groupId>
   <artifactId>spring-session-data-redis</artifactId>
</dependency>
这个依赖一般在主pom和从pom中都要有
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
    <version>${spring-boot-starter.version}</version>
</dependency>
这个依赖主要是在主pom中
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>${jedis.version}</version>
</dependency>

在配置文件中高配置内容:

2、Session配置:

@Configuration
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 86400*30)
public class SessionConfig {
}

maxInactiveIntervalInSeconds: 设置Session失效时间,使用Redis Session之后,原Boot的server.session.timeout属性不再生效

好了,这样就配置好了,

注意: 如果我们不需要设置过期时间的话,可以不用配置

maxInactiveIntervalInSeconds这个属性也是可以的。

3.在配置文件中的操作

# SPRING SESSION (SessionProperties)
#会话存储类型。
spring.session.store-type=redis

#session更新策略,有ON_SAVE、IMMEDIATE,前者是在调用#SessionRepository#save(org.springframework.session.Session)时,在response commit前刷新缓存,#后者是只要有任何更新就会刷新缓存
spring.session.redis.flush-mode = on-save 
#用于存储会话的密钥的命名空间。
spring.session.redis.namespace=SESSIONS
  • properties配置
# Session store type
spring.session.store-type=redis
# Session timeout. If a duration suffix is not specified, seconds will be used. session过期时间
server.servlet.session.timeout=3600
# Sessions flush mode.
spring.session.redis.flush-mode=on-save
# Namespace for keys used to store sessions.
spring.session.redis.namespace=spring:session

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值