首页 > 代码库 > Spring中redis的配置及初级操作
Spring中redis的配置及初级操作
当spring和redis结合时往往都是通过配置bean来解决的首先是配置JedisPoolConfig对象,内容如下:
<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig">
<property name="maxActive" value="http://www.mamicode.com/100"/>
<property name="maxIdle" value="http://www.mamicode.com/50"/>
<property name="maxWait" value="http://www.mamicode.com/20000"/>
</bean>
然后是配置JedisConnectionFactory对象:
<bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
<property name="hostName" value="http://www.mamicode.com/192.168.36.131"/>
<property name="port" value="http://www.mamicode.com/6379"/>
<property name="password" value="http://www.mamicode.com/123456"/>
<property name="poolConfig" ref="poolConfig"/>
</bean>
由于java对象是不能直接存储到redis中去的,所以需要序列化java对象,有key序列器和value序列器,在RedisTemplate对象中配置key和value:
<bean id="jdkSerializationRedisSerializer" class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer"/>
<bean id="stringRedisSerializer" class="org.springframework.data.redis.serializer.StringRedisSerializer"/>
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate">
<property name="connectionFactory" ref="connectionFactory"/>
<property name="keySerializer" ref="stringRedisSerializer"/>
<property name="valueSerializer" ref="jdkSerializationRedisSerializer"/>
</bean>
通过上述的配置呢就可以操作redis数据库了,下面是简单测试连接的一段代码
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
RedisTemplate redisTemplate=(RedisTemplate) applicationContext.getBean("redisTemplate");
// redisTemplate.opsForValue().set("role1","zhangsan");
SessionCallback sessionCallback=new SessionCallback() {//采用sessioncallback主要是因为set和get操作时他们有可能访问的不是一个redis连接,而通过sessioncallback接口来调用他们呢就可以只用一个redis连接
@Override
public Object execute(RedisOperations redisOperations) throws DataAccessException {
redisOperations.opsForValue().set("role2","lisi");
return redisOperations.opsForValue().get("role2");
}
};
String aa=redisTemplate.execute(sessionCallback).toString();
System.out.println(aa);
Spring中redis的配置及初级操作
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。