redis整合ssm

一:pom文件:

[html]  view plain  copy
  1. <span style="white-space:pre;">     </span><dependency>  
  2.             <groupId>redis.clients</groupId>  
  3.             <artifactId>jedis</artifactId>  
  4.             <version>2.9.0</version>  
  5.         </dependency>  

二:配置文件:spring-jedis.xml

[html]  view plain  copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.     xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"  
  4.     xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"  
  5.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  6.     xsi:schemaLocation="http://www.springframework.org/schema/beans   
  7.     http://www.springframework.org/schema/beans/spring-beans-4.2.xsd  
  8.     http://www.springframework.org/schema/context   
  9.     http://www.springframework.org/schema/context/spring-context-4.2.xsd  
  10.     http://www.springframework.org/schema/aop   
  11.     http://www.springframework.org/schema/aop/spring-aop-4.2.xsd   
  12.     http://www.springframework.org/schema/tx   
  13.     http://www.springframework.org/schema/tx/spring-tx-4.2.xsd  
  14.     http://www.springframework.org/schema/util   
  15.     http://www.springframework.org/schema/util/spring-util-4.2.xsd">  
  16.     <!-- 连接池配置 -->  
  17.     <bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">  
  18.         <!-- 最大连接数 -->  
  19.         <property name="maxTotal" value="30" />  
  20.         <!-- 最大空闲连接数 -->  
  21.         <property name="maxIdle" value="10" />  
  22.         <!-- 每次释放连接的最大数目 -->  
  23.         <property name="numTestsPerEvictionRun" value="1024" />  
  24.         <!-- 释放连接的扫描间隔(毫秒) -->  
  25.         <property name="timeBetweenEvictionRunsMillis" value="30000" />  
  26.         <!-- 连接最小空闲时间 -->  
  27.         <property name="minEvictableIdleTimeMillis" value="1800000" />  
  28.         <!-- 连接空闲多久后释放, 当空闲时间>该值 且 空闲连接>最大空闲连接数 时直接释放 -->  
  29.         <property name="softMinEvictableIdleTimeMillis" value="10000" />  
  30.         <!-- 获取连接时的最大等待毫秒数,小于零:阻塞不确定的时间,默认-1 -->  
  31.         <property name="maxWaitMillis" value="1500" />  
  32.         <!-- 在获取连接的时候检查有效性, 默认false -->  
  33.         <property name="testOnBorrow" value="true" />  
  34.         <!-- 在空闲时检查有效性, 默认false -->  
  35.         <property name="testWhileIdle" value="true" />  
  36.         <!-- 连接耗尽时是否阻塞, false报异常,ture阻塞直到超时, 默认true -->  
  37.         <property name="blockWhenExhausted" value="false" />  
  38.     </bean>     
  39.     <!-- jedis客户端单机版 -->  
  40.       <bean id="redisClient" class="redis.clients.jedis.JedisPool">  
  41.         <constructor-arg name="host" value="192.168.91.143"></constructor-arg>  
  42.         <constructor-arg name="port" value="6379"></constructor-arg>  
  43.         <constructor-arg name="poolConfig" ref="jedisPoolConfig"></constructor-arg>  
  44.     </bean>   
  45.        
  46.     <!-- <bean id="jedisClient" class="cn.sys.auth.redisCach.JedisClientSingleService"/>  -->  
  47.     <!-- jedis集群版配置 -->  
  48.     <!--  <bean id="redisClient" class="redis.clients.jedis.JedisCluster">  
  49.         <constructor-arg name="nodes">  
  50.             <set>  
  51.                 <bean class="redis.clients.jedis.HostAndPort">  
  52.                     <constructor-arg name="host" value="192.168.91.143"></constructor-arg>  
  53.                     <constructor-arg name="port" value="7001"></constructor-arg>  
  54.                 </bean>  
  55.                 <bean class="redis.clients.jedis.HostAndPort">  
  56.                     <constructor-arg name="host" value="192.168.91.143"></constructor-arg>  
  57.                     <constructor-arg name="port" value="7002"></constructor-arg>  
  58.                 </bean>  
  59.                 <bean class="redis.clients.jedis.HostAndPort">  
  60.                     <constructor-arg name="host" value="192.168.91.143"></constructor-arg>  
  61.                     <constructor-arg name="port" value="7003"></constructor-arg>  
  62.                 </bean>  
  63.                 <bean class="redis.clients.jedis.HostAndPort">  
  64.                     <constructor-arg name="host" value="192.168.91.143"></constructor-arg>  
  65.                     <constructor-arg name="port" value="7004"></constructor-arg>  
  66.                 </bean>  
  67.                 <bean class="redis.clients.jedis.HostAndPort">  
  68.                     <constructor-arg name="host" value="192.168.91.143"></constructor-arg>  
  69.                     <constructor-arg name="port" value="7005"></constructor-arg>  
  70.                 </bean>  
  71.                 <bean class="redis.clients.jedis.HostAndPort">  
  72.                     <constructor-arg name="host" value="192.168.91.143"></constructor-arg>  
  73.                     <constructor-arg name="port" value="7006"></constructor-arg>  
  74.                 </bean>  
  75.             </set>  
  76.         </constructor-arg>  
  77.         <constructor-arg name="poolConfig" ref="jedisPoolConfig"></constructor-arg>  
  78.     </bean>  
  79.      <bean id="jedisClientCluster" class="cn.sys.auth.redisCach.JedisClientSingleService"></bean> -->  
  80.  </beans>  
三:web.xml

[html]  view plain  copy
  1. <context-param>  
  2.    <param-name>contextConfigLocation</param-name>  
  3.    <param-value>classpath*:config/spring-mybatis.xml,classpath*:config/spring-jedis.xml</param-value>  
  4.  </context-param>  
四:接口及实现类类(java代码)
[java]  view plain  copy
  1. package cn.sys.auth.redisCach;  
  2.   
  3. public interface JedisClient {  
  4.     String get(String key);  
  5.     String set(String key, String value);  
  6.     String hget(String hkey, String key);  
  7.     long hset(String hkey, String key, String value);  
  8.     long incr(String key);  
  9.     long expire(String key, int second);  
  10.     long ttl(String key);  
  11.     long del(String key);  
  12.     long hdel(String hkey, String key);  
  13. }  
集群
[java]  view plain  copy
  1. package cn.sys.auth.redisCach;  
  2.   
  3. import org.springframework.beans.factory.annotation.Autowired;  
  4.   
  5. import redis.clients.jedis.JedisCluster;  
  6. /** 
  7.  *  
  8.  * 类名称: JedisClientClusterServcie. 
  9.  * 类描述:集群版实现 
  10.  * 创建者: LYJ  
  11.  * 创建时间: 2016年11月21日 下午7:15:22 
  12.  */  
  13. public class JedisClientClusterServcie implements JedisClient{  
  14.     @Autowired  
  15.     private JedisCluster jedisCluster;  
  16.       
  17.     @Override  
  18.     public String get(String key) {  
  19.         return jedisCluster.get(key);  
  20.     }  
  21.   
  22.     @Override  
  23.     public String set(String key, String value) {  
  24.         return jedisCluster.set(key, value);  
  25.     }  
  26.   
  27.     @Override  
  28.     public String hget(String hkey, String key) {  
  29.         return jedisCluster.hget(hkey, key);  
  30.     }  
  31.   
  32.     @Override  
  33.     public long hset(String hkey, String key, String value) {  
  34.         return jedisCluster.hset(hkey, key, value);  
  35.     }  
  36.   
  37.     @Override  
  38.     public long incr(String key) {  
  39.         return jedisCluster.incr(key);  
  40.     }  
  41.   
  42.     @Override  
  43.     public long expire(String key, int second) {  
  44.         return jedisCluster.expire(key, second);  
  45.     }  
  46.   
  47.     @Override  
  48.     public long ttl(String key) {  
  49.         return jedisCluster.ttl(key);  
  50.     }  
  51.   
  52.     @Override  
  53.     public long del(String key) {  
  54.           
  55.         return jedisCluster.del(key);  
  56.     }  
  57.   
  58.     @Override  
  59.     public long hdel(String hkey, String key) {  
  60.           
  61.         return jedisCluster.hdel(hkey, key);  
  62.     }  
  63. }  
单机
[html]  view plain  copy
  1. package cn.sys.auth.redisCach;  
  2.   
  3. import org.springframework.beans.factory.annotation.Autowired;  
  4. import org.springframework.stereotype.Service;  
  5.   
  6. import redis.clients.jedis.Jedis;  
  7. import redis.clients.jedis.JedisPool;  
  8. /**  
  9.  *   
  10.  * 类名称: JedisClientSingleService.  
  11.  * 类描述:单机版实现类  
  12.  * 创建者: LYJ   
  13.  * 创建时间: 2016年11月21日 下午7:16:06  
  14.  */  
  15.     @Service  
  16.     public class JedisClientSingleService implements JedisClient {  
  17.         @Autowired  
  18.         private JedisPool jedisPool;   
  19.           
  20.         @Override  
  21.         public String get(String key) {  
  22.             Jedis jedis = jedisPool.getResource();  
  23.             String string = jedis.get(key);  
  24.             jedis.close();  
  25.             return string;  
  26.         }  
  27.   
  28.         @Override  
  29.         public String set(String key, String value) {  
  30.             Jedis jedis = jedisPool.getResource();  
  31.             String string = jedis.set(key, value);  
  32.             jedis.close();  
  33.             return string;  
  34.         }  
  35.   
  36.         @Override  
  37.         public String hget(String hkey, String key) {  
  38.             Jedis jedis = jedisPool.getResource();  
  39.             String string = jedis.hget(hkey, key);  
  40.             jedis.close();  
  41.             return string;  
  42.         }  
  43.   
  44.         @Override  
  45.         public long hset(String hkey, String key, String value) {  
  46.             Jedis jedis = jedisPool.getResource();  
  47.             Long result = jedis.hset(hkey, key, value);  
  48.             jedis.close();  
  49.             return result;  
  50.         }  
  51.   
  52.         @Override  
  53.         public long incr(String key) {  
  54.             Jedis jedis = jedisPool.getResource();  
  55.             Long result = jedis.incr(key);  
  56.             jedis.close();  
  57.             return result;  
  58.         }  
  59.   
  60.         @Override  
  61.         public long expire(String key, int second) {  
  62.             Jedis jedis = jedisPool.getResource();  
  63.             Long result = jedis.expire(key, second);  
  64.             jedis.close();  
  65.             return result;  
  66.         }  
  67.   
  68.         @Override  
  69.         public long ttl(String key) {  
  70.             Jedis jedis = jedisPool.getResource();  
  71.             Long result = jedis.ttl(key);  
  72.             jedis.close();  
  73.             return result;  
  74.         }  
  75.   
  76.         @Override  
  77.         public long del(String key) {  
  78.             Jedis jedis = jedisPool.getResource();  
  79.             Long result = jedis.del(key);  
  80.             jedis.close();  
  81.             return result;  
  82.         }  
  83.   
  84.         @Override  
  85.         public long hdel(String hkey, String key) {  
  86.             Jedis jedis = jedisPool.getResource();  
  87.             Long result = jedis.hdel(hkey, key);  
  88.             jedis.close();  
  89.             return result;  
  90.         }  
  91.     }  

就此,开发搭建完成
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值