在使用redis的时候,默认是使用第0个库,假如你要使用其他的库(redis默认是16个库),那怎么办了,
在redis和spring整合配置后,假如使用了redisTemplate进行redis的一系列操作,
假如你想切库怎么操作了?
可以采用以下办法:
selectNm:是要选择库的下标
/**redis切库**/
public void selectOtherDataBase(int selectNm){
jedisConnFactory.setDatabase(selectNm);
redisTemplate.setConnectionFactory(jedisConnFactory);
}
因为在redis.xml的配置如下:
<!-- redis服务器中心 -->
<bean id="jedisConnFactory"
class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
<property name="poolConfig" ref="poolConfig" />
<property name="port" value="${redis.port}" />
<property name="hostName" value="${redis.host}" />
<property name="password" value="${redis.pass}" />
<property name="timeout" value="${redis.timeout}" />
</bean>
selectOtherDataBase方法中的jedisConnFactory是从配置文件中得到的,根据spring的注入方式,注入到要操作的类中,
使用junit来测试一下:
@Test
public void redisQiKu(){
RedisUtils ru = new RedisUtils();
ru.selectOtherDataBase(4);
String str = "Junit-QiKU";
ru.setCache("Junit-QiKU", str);
}