1.本文前提是已经有一个可以正常使用的springMVC框架,这里仅仅是把redis集成进去
2.项目使用maven管理
3.请给redis添加密码验证,在redis安装目录里的redis.windows.conf
文件中查找requirepass
关键字,在其下面添加以下代码(密码自定义,这里是test@redis
):
requirepass test@redis
一、pom文件添加相关依赖
添加两个依赖:
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
<version>1.7.2.RELEASE</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
二、配置spring-redis.xml文件
在resources目录下新建一个名为spring-redis的xml配置文件,然后在spring配置文件里引入,
<import resource="spring-redis.xml"/>
当然,也可以直接在applicationContext.xml
里面添加配置
spring-redis.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"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.3.xsd">
<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig">
<property name="maxIdle" value="300" />
<property name="maxTotal" value="600" />
<property name="minIdle" value="100" />
<property name="testOnBorrow" value="true" />
<property name="testOnReturn" value="true"/>
</bean>
<bean id="jedisPool" class="redis.clients.jedis.JedisPool">
<constructor-arg index="0" ref="poolConfig"/>
<constructor-arg index="1" value="127.0.0.1"/>
<constructor-arg index="2" value="6379" type="int"/>
<constructor-arg index="3" value="30000" type="int"/>
<constructor-arg index="4" value="test@redis"/>
</bean>
</beans>
注意:
1.redis服务的ip和端口修改为自己的
2.redis密码
3.其它参数可根据实际情况调整
三、单元测试
import javax.annotation.Resource;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(locations = { "file:src/main/resources/applicationContext.xml", "file:src/main/resources/springMVC-servlet.xml" })
public class JedisUtilTest {
@Resource(name = "jedisPool")
private JedisPool jedisPool;
private Jedis jedis = null;
@Before
public void before(){
// 获取资源
jedis = jedisPool.getResource();
}
@After
public void after(){
jedis.close();
}
@Test
public void 新增或修改() {
String set = jedis.set("add_test", "add one data");
System.out.println(set); // OK
}
@Test
public void 是否存在() {
Boolean exists = jedis.exists("myKey");
System.out.println(exists); // true
}
@Test
public void 获取指定key的内容() {
System.out.println(jedis.get("myKey"));
}
@Test
public void 删除() {
Long del = jedis.del("myKey");
System.out.println(del); // 1
}
}
代码仅仅测试了增删改查,其它的方法请自行查看Jedis类中方法