springboot切換redis數據庫


import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;

/**
 * @author ck
 * @create 2019-05-25 19:54
 */
public class MyRedis {

    /**
     * 切換redis數據庫
     * @param redisTemplate springboot封裝的redis對象
     * @param index  數據庫下標
     */
    public static void select(RedisTemplate redisTemplate, int index){
        LettuceConnectionFactory lettuceConnectionFactory = (LettuceConnectionFactory) redisTemplate.getConnectionFactory();
        if(lettuceConnectionFactory != null){
            lettuceConnectionFactory.setDatabase(index);
            redisTemplate.setConnectionFactory(lettuceConnectionFactory);
            lettuceConnectionFactory.resetConnection();
        }
    }
}

測試

@Autowired
private StringRedisTemplate stringRedisTemplate;

@Test
public void test06(){
  //切換到1庫
  MyRedis.select(stringRedisTemplate,1);
  stringRedisTemplate.opsForValue().set("k1","v1");

  //切換到0庫
  MyRedis.select(stringRedisTemplate,0);
  stringRedisTemplate.opsForValue().set("k0","v0");

}

 結果

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章