spring-boot 集成spring-session redis

查看redis是否可用

redis-cli -h 192.168.1.103 -p 6379
auth 123456
keys *

 9) "spring:session:sessions:expires:c1295cf3-e0f7-4f01-8c31-fe85dab6517b"

默认request header:
Cookie:
SESSION=531b91bc-df97-42c4-91cc-3a29ef5d7c15
如果我们有两套不同的子系统A和B,cookies中session名称相同会导致同一个浏览器登录两个系统会造成相互的干扰;
1,不同系统的redis空间不同
2,不同系统的cookie的key不同
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 7200,redisNamespace="nick")
public class RedisHttpSessionConfig {

    @Bean
    public RedisConnectionFactory connectionFactory() {

        JedisConnectionFactory connectionFactory = new JedisConnectionFactory();
        connectionFactory.setPort(6379);
        connectionFactory.setHostName("***");
        connectionFactory.setPassword("***");
        return connectionFactory;
    }

    /*@Bean
    不要使用这个
    public HttpSessionStrategy httpSessionStrategy() {
        return new HeaderHttpSessionStrategy();
    }*/

    @Bean
    public CookieHttpSessionStrategy cookieHttpSessionStrategy(){
        CookieHttpSessionStrategy strategy=new CookieHttpSessionStrategy();
        DefaultCookieSerializer cookieSerializer=new DefaultCookieSerializer();
        cookieSerializer.setCookieName("NICKSESSIONID");//cookies名称
        cookieSerializer.setCookieMaxAge(1800);//过期时间(秒)
        strategy.setCookieSerializer(cookieSerializer);
        return strategy;
    }

}

项目地址 https://github.com/nick8sky/spring-clouds / spring-session
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值