zoukankan      html  css  js  c++  java
  • spring boot -spring data-redis

    //添加依赖
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
    <!-- 1.5的版本默认采用的连接池技术是jedis 2.0以上版本默认连接池是lettuce, 在这里采用jedis,所以需要排除lettuce的jar -->
    <exclusions>
    <exclusion>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    </exclusion>
    <exclusion>
    <groupId>io.lettuce</groupId>
    <artifactId>lettuce-core</artifactId>
    </exclusion>
    </exclusions>
    </dependency>
    <!-- 添加jedis客户端 -->
    <dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.9.0</version>
    </dependency>
    <!--spring2.0集成redis所需common-pool2-->
    <!-- 必须加上,jedis依赖此 -->
    <!-- spring boot 2.0 的操作手册有标注 大家可以去看看 地址是:https://docs.spring.io/spring-boot/docs/2.0.3.RELEASE/reference/htmlsingle/-->
    <dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-pool2</artifactId>
    <version>RELEASE</version>
    </dependency>

    添加配置类,初始化RedisTemplate

    @Configuration
    public class ConfigurationRedis {
    
        @Bean
        public JedisPoolConfig JedisPoolConfig () {
            JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
            jedisPoolConfig.setMaxIdle(10);
            jedisPoolConfig.setMinIdle(5);
            jedisPoolConfig.setMaxTotal(20);
            return jedisPoolConfig;
        }
        @Bean
        public JedisConnectionFactory JedisConnectionFacoty(JedisPoolConfig jedisPoolConfig){
            JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory();
            jedisConnectionFactory.setPoolConfig(jedisPoolConfig);
            jedisConnectionFactory.setHostName("192.168.204.129");
            jedisConnectionFactory.setPort(6379);
            return jedisConnectionFactory;
        }
        @Bean
        public RedisTemplate<String,Object> RedisTemplate (JedisConnectionFactory jedisConnectionFactory) {
            RedisTemplate<String,Object> redisTemplate = new RedisTemplate<String,Object>();
            redisTemplate.setConnectionFactory(jedisConnectionFactory);
            redisTemplate.setKeySerializer(new StringRedisSerializer());
            redisTemplate.setValueSerializer(new StringRedisSerializer());
            return redisTemplate;
        }
    }

    测试类

    @SpringBootTest(classes = springBoot.class )
    @RunWith(SpringJUnit4ClassRunner.class)
    
    public class RedisTest {
    @Autowired
        RedisTemplate<String,Object> redisTemplate ;
    @Test
        public void test1(){
            redisTemplate.opsForValue().set("key1","v2我是");
        redisTemplate.opsForValue().set("key1","v3我是");
            System.out.println(redisTemplate.opsForValue().get("key1"));
        }
    @Test
      public void test2 () {
        //RedisUser implements Serializable
        RedisUser redisUser = new RedisUser(1,"呵呵",10);
        this.redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
        this.redisTemplate.opsForValue().set("user",redisUser);
        System.out.println(this.redisTemplate.opsForValue().get("user"));
        this.redisTemplate.setValueSerializer(new Jackson2JsonRedisSerializer(RedisUser.class));
        this.redisTemplate.opsForValue().set("user",redisUser);
        System.out.println(this.redisTemplate.opsForValue().get("user"));
      }
    }
  • 相关阅读:
    POJ-2253 Frogger dijsktra查找间隔最小的路径
    LightOJ-1282 Leading and Trailing 模算数 快速幂 对数的用法
    LightOJ-1341 Aladdin and the Flying Carpet 分解质因数(注意对大素数的优化)
    UVA-10200 Prime Time 素数(注意除法精度)
    POJ-2142 The Balance 扩展欧几里德(+绝对值和最小化)
    ArchLinux 音乐播放客户端ncmpcpp和服务端mpd的配置
    [笔记-统计学习方法]感知机模型(perceptron) 原理与实现
    [Bug]Python3.x AttributeError: libtest.so: undefined symbol: fact
    [Bug]C++ XXX:undefined reference to "xxx"
    ip代理池的爬虫编写、验证和维护
  • 原文地址:https://www.cnblogs.com/hongchengshise/p/10568930.html
Copyright © 2011-2022 走看看