Spring-Data-Redis配置詳解
Spring Data Redis的配置網上一大堆,不同的資料可能方法略有出入。這裡筆者就記錄一下自己親配的流程吧。
首先我專案中使用了Maven。
第一步,先加個repository:
<repository>
<id>maven-central</id>
<name>Maven Repository Switchboard</name>
<url>http://repo1.maven.org/maven2</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
第二步,改pom.xml,這裡的配置不同的version可能會有jar包衝突,這個也要看自身的Spring的版本,筆者Spring3.1X,配的差不多是最新的spring-data-redis和jedis,幸運地通過了:
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
<version>1.4.1.RELEASE</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.6.1</version>
</dependency>
第三步,加配置檔案,筆者新建配置檔案命名為redis-config.xml,然後:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"></bean>
<bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
<property name="hostName" value="127.0.0.1"></property>
<property name="port" value="6379"></property>
<property name="password" value="123456"></property>
<property name="timeout" value="10000"></property>
<property name="usePool" value="true"></property>
<property name="poolConfig" ref="jedisPoolConfig"></property>
</bean>
<!-- redis template definition -->
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate">
<property name="connectionFactory" ref="jedisConnectionFactory"></property>
<property name="keySerializer">
<bean class="org.springframework.data.redis.serializer.StringRedisSerializer"/>
</property>
<property name="valueSerializer">
<bean class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer"/>
</property>
</bean>
</beans>
這裡配的jedisPoolConfig依賴於pom.xml中的jedis,redisTemplate和jedisConnectionFactory依賴於pom.xml中配的spring-data-redis。當然,jedisConnectionFactory預設也是以redis.clients.jedis.JedisPoolConfig作為連線池類。這裡顯式配置,是為自定義JedisPoolConfig的連線池屬性留的,可以用<property>標籤做一些個性化的配置,當然這裡沒有配,採用的是預設配置了。
接下來不打算自己手寫,因幾篇還算可以的資料來補全此文吧:
1、http://www.360doc.com/content/14/0425/13/203871_372092436.shtml此文對一些自定義配置做了講解,對使用方法也做了補充
2、http://www.tuicool.com/articles/7Bni6f此文純手工不用Maven配,也做了一些不錯的介紹補充
3、http://www.cnblogs.com/linjiqin/archive/2013/06/14/3135248.html此文對連線池方面做了補充介紹
4、http://spring.io/docs這是官方網站,官方文件,非常使用的
5、http://redisdoc.com/這是redis命令參考手冊,不錯的~