连接单机版
第一步:创建一个Jedis对象。需要指定服务端的ip及端口。
第二步:使用Jedis对象操作数据库,每个redis命令对应一个方法。
第三步:打印结果。
第四步:关闭Jedis
@Test
 
public void testJedis()throws Exception { 
// 第一步:创建一个Jedis对象。需要指定服务端的ip及端口。 
Jedis jedis =new Jedis("192.168.25.153", 6379);
 
// 第二步:使用Jedis对象操作数据库,每个redis命令对应一个方法。
 
String result =jedis.get("hello");
 
// 第三步:打印结果。
 
System.out.println(result);
 
// 第四步:关闭Jedis
 
jedis.close();
 
}
 
接单机版使用连接池
第一步:创建一个JedisPool对象。需要指定服务端的ip及端口。
第二步:从JedisPool中获得Jedis对象。
第三步:使用Jedis操作redis服务器。
第四步:操作完毕后关闭jedis对象,连接池回收资源。
第五步:关闭JedisPool对象。
@Test
 
public void testJedisPool()throws Exception {
 
// 第一步:创建一个JedisPool对象。需要指定服务端的ip及端口。
 
JedisPool jedisPool = new JedisPool("192.168.25.153", 6379);
 
// 第二步:从JedisPool中获得Jedis对象。
 
Jedis jedis = jedisPool.getResource();
 
// 第三步:使用Jedis操作redis服务器。
 
jedis.set("jedis","test");
 
String result = jedis.get("jedis");
 
System.out.println(result);
 
// 第四步:操作完毕后关闭jedis对象,连接池回收资源。
 
jedis.close();
 
// 第五步:关闭JedisPool对象。
 
jedisPool.close();
 
}
 
连接集群版
第一步:使用JedisCluster对象。需要一个Set<HostAndPort>参数。Redis节点的列表。
第二步:直接使用JedisCluster对象操作redis。在系统中单例存在。
第三步:打印结果
第四步:系统关闭前,关闭JedisCluster对象。
// 连接redis集群
 
@Test
 
public void testJedisCluster() {
 
 
 
JedisPoolConfig config = new JedisPoolConfig();
 
// 最大连接数
 
config.setMaxTotal(30);
 
// 最大连接空闲数
 
config.setMaxIdle(2);
 
 
 
//集群结点
 
Set<HostAndPort> jedisClusterNode = new HashSet<HostAndPort>();
 
jedisClusterNode.add(new HostAndPort("192.168.101.3", 7001));
 
jedisClusterNode.add(new HostAndPort("192.168.101.3", 7002));
 
jedisClusterNode.add(new HostAndPort("192.168.101.3", 7003));
 
jedisClusterNode.add(new HostAndPort("192.168.101.3", 7004));
 
jedisClusterNode.add(new HostAndPort("192.168.101.3", 7005));
 
jedisClusterNode.add(new HostAndPort("192.168.101.3", 7006));
 
JedisCluster jc = new JedisCluster(jedisClusterNode, config);
 
 
 
JedisCluster jcd = new JedisCluster(jedisClusterNode);
 
jcd.set("name","zhangsan");
 
String value = jcd.get("name");
 
System.out.println(value);
 
}
****使用Spring整合
配置applicationContext.xml
<!-- 连接池配置 -->
 
<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
 
         <!-- 最大连接数 -->
 
        <property name="maxTotal" value="30" />
 
        <!-- 最大空闲连接数 -->
 
        <property name="maxIdle" value="10" />
 
        <!-- 每次释放连接的最大数目 -->
 
        <property name="numTestsPerEvictionRun" value="1024" />
 
        <!-- 释放连接的扫描间隔(毫秒) -->
 
        <property name="timeBetweenEvictionRunsMillis" value="30000" />
 
        <!-- 连接最小空闲时间 -->
 
        <property name="minEvictableIdleTimeMillis" value="1800000" />
 
        <!-- 连接空闲多久后释放, 当空闲时间>该值 且 空闲连接>最大空闲连接数 时直接释放 -->
 
        <property name="softMinEvictableIdleTimeMillis" value="10000" />
 
        <!-- 获取连接时的最大等待毫秒数,小于零:阻塞不确定的时间,默认-1 -->
 
        <property name="maxWaitMillis" value="1500" />
 
        <!-- 在获取连接的时候检查有效性, 默认false -->
 
        <property name="testOnBorrow" value="true" />
 
        <!-- 在空闲时检查有效性, 默认false -->
 
        <property name="testWhileIdle" value="true" />
 
        <!-- 连接耗尽时是否阻塞, false报异常,ture阻塞直到超时,默认true -->
 
        <property name="blockWhenExhausted" value="false" />
 
</bean>
 
<!-- redis集群 -->
 
<bean id="jedisCluster" class="redis.clients.jedis.JedisCluster">
 
    <constructor-arg index="0">
 
<set>
 
    <bean class="redis.clients.jedis.HostAndPort">
 
        <constructor-arg index="0" value="192.168.101.3"></constructor-arg>
 
        <constructor-arg index="1" value="7001"></constructor-arg>
 
    </bean>
 
    <bean class="redis.clients.jedis.HostAndPort">
 
        <constructor-arg index="0" value="192.168.101.3"></constructor-arg>
 
        <constructor-arg index="1" value="7002"></constructor-arg>
 
    </bean>
 
    <bean class="redis.clients.jedis.HostAndPort">
 
        <constructor-arg index="0" value="192.168.101.3"></constructor-arg>
 
        <constructor-arg index="1" value="7003"></constructor-arg>
 
    </bean>
 
    <bean class="redis.clients.jedis.HostAndPort">
 
        <constructor-arg index="0" value="192.168.101.3"></constructor-arg>
 
        <constructor-arg index="1" value="7004"></constructor-arg>
 
    </bean>
 
    <bean class="redis.clients.jedis.HostAndPort">
 
        <constructor-arg index="0" value="192.168.101.3"></constructor-arg>
 
        <constructor-arg index="1" value="7005"></constructor-arg>
 
    </bean>
 
    <bean class="redis.clients.jedis.HostAndPort">
 
        <constructor-arg index="0" value="192.168.101.3"></constructor-arg>
 
        <constructor-arg index="1" value="7006"></constructor-arg>
 
    </bean>
 
</set>
 
</constructor-arg> 
<constructor-arg index="1" ref="jedisPoolConfig"></constructor-arg>
 
</bean>
测试代码
private ApplicationContextapplicationContext;
 
 
@Before 
public void init() { 
applicationContext =new ClassPathXmlApplicationContext( 
"classpath:applicationContext.xml"); 
} 
 
 
//redis集群 
@Test 
public void testJedisCluster() { 
JedisCluster jedisCluster = (JedisCluster)applicationContext.getBean("jedisCluster"); 
jedisCluster.set("name","zhangsan"); 
String value = jedisCluster.get("name"); 
System.out.println(value); 
}