• 技术文章 >Java >java教程

    SpringBoot配置redis和分布式session-redis的方法(代码)

    不言不言2018-09-20 15:36:24原创1144
    本篇文章给大家带来的内容是关于SpringBoot配置redis和分布式session-redis的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    springboot项目和传统项目配置redis的区别,更加简单方便,在分布式系统中,解决sesssion共享问题,可以用spring session redis。

    1、pom.xml

    <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-redis</artifactId>
            </dependency>
    <dependency>
                <groupId>org.springframework.session</groupId>
                <artifactId>spring-session-data-redis</artifactId>
            </dependency>

    2、rdis配置类类

    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.cache.annotation.CachingConfigurerSupport;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import redis.clients.jedis.JedisPoolConfig;
    import redis.clients.jedis.JedisShardInfo;
    import redis.clients.jedis.ShardedJedisPool;
    
    import java.util.ArrayList;
    import java.util.List;
    
    @Configuration
    public class RedisConfig extends CachingConfigurerSupport {
    
        @Value("${redis.host}")
        private String host;
        @Value("${redis.port}")
        private Integer port;
        @Value("${redis.maxTotal}")
        private Integer maxTotal;
        @Value("${redis.maxIdle}")
        private Integer maxIdle;
        @Value("${redis.maxWaitMillis}")
        private Long maxWaitMillis;
    
        @Bean
        public ShardedJedisPool shardedJedisPool() {
            JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
            jedisPoolConfig.setMaxTotal(maxTotal);
            jedisPoolConfig.setMaxIdle(maxIdle);
            jedisPoolConfig.setMaxWaitMillis(maxWaitMillis);
            List<JedisShardInfo> jedisShardInfos = new ArrayList<>();
            jedisShardInfos.add(new JedisShardInfo(host,port));
            return  new ShardedJedisPool(jedisPoolConfig, jedisShardInfos);
        }
    
    }

    3、session redis 配置类

    import org.springframework.context.annotation.Configuration;
    import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
    /**
     * session共享
     */
    @Configuration
    @EnableRedisHttpSession(maxInactiveIntervalInSeconds=60*60)
    public class RedisSessionConfig {
    }

    以上就是SpringBoot配置redis和分布式session-redis的方法(代码)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:SpringBoot
    上一篇:SpringBoot添加自定义拦截器的方法实现(代码) 下一篇:java web定时任务的实现代码
    大前端线上培训班

    相关文章推荐

    • SpringBoot框架是什么?SpringBoot框架的搭建过程• SpringBoot返回JSON日期格式出现的问题解决• springboot中配置RestTemplate的方法• springboot项目配置两个数据源的方法• SpringBoot添加自定义拦截器的方法实现(代码)

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网