packagecom.chao.redis;importredis.clients.jedis.JedisPoolConfig;importredis.clients.jedis.JedisShardInfo;importredis.clients.jedis.ShardedJedis;importredis.clients.jedis.ShardedJedisPool;importjava.util.ArrayList;importjava.util.List;public classRedisUtil {private static ShardedJedisPool jedisPool = null;static{
JedisPoolConfig jedisPoolConfig= newJedisPoolConfig();//设置最大对象数
jedisPoolConfig.setMaxTotal(20);//设置最大能够保持空闲状态的对象数
jedisPoolConfig.setMaxIdle(10);//超出时间
jedisPoolConfig.setMaxWaitMillis(10000);//设置获取连接的时候检查有效性,默认false
jedisPoolConfig.setTestOnBorrow(true);//在返回object时,对返回的connection进行validateObject校验
jedisPoolConfig.setTestOnReturn(true);//如果是集群,全部加入到list中
List list = new ArrayList();
JedisShardInfo jedisShardInfo= new JedisShardInfo("192.168.19.197","6379");
jedisShardInfo.setPassword("redis123.");
list.add(jedisShardInfo);
jedisPool= newShardedJedisPool(jedisPoolConfig,list);
}/*** 从连接池中获取一个ShardedJedis对象*/
public staticShardedJedis getJedis() {returnjedisPool.getResource();
}/*** 关闭ShardedJedis,放回池中*/
public static voidcloseJedis(ShardedJedis shardedJedis) {
shardedJedis.close();
}/*** 通过key获取String类型value
*@paramkey
*@return
*/
public staticString get(String key) {
ShardedJedis jedis=jedisPool.getResource();returnjedis.get(key);
}/*** 设置String类型的key和value
*@paramkey
*@paramvalue
*@return
*/
public staticString set(String key,String value) {
ShardedJedis jedis=jedisPool.getResource();returnjedis.set(key,value);
}/*** 删除指定key
*@paramkey
*@return
*/
public staticLong del(String key) {
ShardedJedis jedis=jedisPool.getResource();returnjedis.del(key);
}/*** 左侧放入集合
*@paramkey
*@paramvalues
*@return
*/
public staticLong lpush(String key,String... values){
ShardedJedis jedis=jedisPool.getResource();returnjedis.lpush(key,values);
}/*** 左侧弹出一个元素
*@paramkey
*@return
*/
public staticString lpop(String key) {
ShardedJedis jedis=jedisPool.getResource();returnjedis.lpop(key);
}/*** 右侧放入集合
*@paramkey
*@paramvalues
*@return
*/
public staticLong rpush(String key,String... values) {
ShardedJedis jedis=jedisPool.getResource();returnjedis.rpush(key,values);
}/*** 右侧弹出一个元素
*@paramkey
*@return
*/
public staticString rpop(String key) {
ShardedJedis jedis=jedisPool.getResource();returnjedis.rpop(key);
}
}