package com.test.redis; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; import redis.clients.jedis.Protocol; public class BaseRedisController { protected JedisPool pool; public void start() { String host = "127.0.0.1"; int port = 6379; try { int maxActive = 20; int maxIdle = 10; int maxWait = 60000; int minIdle = 5; JedisPoolConfig jedisPoolConfig = new JedisPoolConfig(); jedisPoolConfig.setMaxTotal(maxActive); jedisPoolConfig.setMaxIdle(maxIdle); jedisPoolConfig.setMaxWaitMillis(maxWait); jedisPoolConfig.setMinIdle(minIdle); jedisPoolConfig.setNumTestsPerEvictionRun(2); jedisPoolConfig.setTestOnBorrow(false); jedisPoolConfig.setTestOnReturn(false); jedisPoolConfig.setTestWhileIdle(true); // pool = new JedisPool(jedisPoolConfig, host, port); if(pool == null){ pool = new JedisPool(jedisPoolConfig, host, port, Protocol.DEFAULT_TIMEOUT, null, 0); } } catch (Exception e1) { e1.printStackTrace(); } Jedis jedis = pool.getResource(); try { if (!jedis.isConnected()) { throw new Exception("Cann't connect to User Redis Server!"); } } catch (Exception e) { e.printStackTrace(); } finally { pool.returnResource(jedis); } } public void stop() { pool.destroy(); } }
package com.test.redis; import redis.clients.jedis.Jedis; import redis.clients.jedis.exceptions.JedisException; public class FirstRedisManager extends BaseRedisController{ private static final String SESSION_PREFIX = "test-"; private static final int SESSION_TIMEOUT_IN_SECONDS = 24 * 60 * 60; public void set(String mobile, String createTime, String num) { Jedis jedis = null; try { jedis = pool.getResource(); String key = SESSION_PREFIX + mobile; jedis.hset(key, createTime, num); jedis.expire(key, SESSION_TIMEOUT_IN_SECONDS); pool.returnResource(jedis); } catch (Exception e) { if (jedis != null) { pool.returnBrokenResource(jedis); } throw new JedisException(e); } } public void set(String key, String value){ Jedis jedis = null; try { jedis = pool.getResource(); key = SESSION_PREFIX + key; jedis.set(key, value); jedis.expire(key, SESSION_TIMEOUT_IN_SECONDS); pool.returnResource(jedis); } catch (Exception e) { if(jedis != null){ pool.returnBrokenResource(jedis); } e.printStackTrace(); } } public String get(String mobile, String createTime){ Jedis jedis = null; String result = null; try { jedis = pool.getResource(); String key = SESSION_PREFIX + mobile; result = jedis.hget(key, createTime); pool.returnResource(jedis); } catch (Exception e) { if (jedis != null) { pool.returnBrokenResource(jedis); } e.printStackTrace(); } return result; } public void delete(String mobile, String createTime) { Jedis jedis = null; try { jedis = pool.getResource(); mobile = SESSION_PREFIX + mobile; jedis.hdel(mobile, createTime); pool.returnResource(jedis); } catch (Exception e) { if (jedis != null) { pool.returnBrokenResource(jedis); } throw new JedisException(e); } } public static void main(String[] args) { FirstRedisManager firstRedisManager = new FirstRedisManager(); firstRedisManager.start(); String mobile = "123456789"; String createTime = "2015-5-22"; String num = "HelloWorld!"; firstRedisManager.set(mobile, createTime, num); System.out.println("redis get String ---->" + firstRedisManager.get(mobile, createTime)); firstRedisManager.delete(mobile, createTime); System.out.println("redis get String ---->" + firstRedisManager.get(mobile, createTime)); } }
相关推荐
Redis 入门指南.pdf
Redis入门到精通最新教学视频!!!!!!!!!!!!!!!!!!!
Redis入门指南 第2版 高清PDF完整扫描版.pdf 。搜集整理自互联网,仅供个人学习,严禁用于商业用途,如有版权问题,请联系删除。
《Redis入门指南(第2版)》是一本Redis的入门指导书籍,以通俗易懂的方式介绍了Redis基础与实践方面的知识,包括历史与特性、在开发和生产环境中部署运行Redis、数据类型与命令、使用Redis实现队列、事务、复制、...
《Redis入门指南》是一本Redis的入门指导书籍,以通俗易懂的方式介绍了Redis基础与实践方面的知识,包括历史与特性、在开发和生产环境中部署运行Redis、数据类型与命令、使用Redis实现队列、事务、复制、管道、持久...
本书是一本Redis入门指导书籍,以通俗易懂的方式介绍了Redis基础与实践方面的知识,包括历史特性、在开发和生产环境中部署运行Redis、数据类型与命令、使用Redis实现队列、事务、复制、管道、持久化、优化Redis存储...
《Redis入门指南》是一本Redis的入门指导书籍,以通俗易懂的方式介绍了Redis基础与实践方面的知识,包括历史与特性、在开发和生产环境中部署运行Redis、数据类型与命令、使用Redis实现队列、事务、复制、管道、持久...
redis 入门教程,高清扫描版。免费下载、
Redis Redis入门第二版 Redis入门第二版 Redis入门第二版
《Redis入门指南(第2版)》是一本Redis的入门指导书籍,以通俗易懂的方式介绍了Redis基础与实践方面的知识,包括历史与特性、在开发和生产环境中部署运行Redis、数据类型与命令、使用Redis实现队列、事务、复制、...
Redis入门指南pdf带目录
Redis入门简单实例,附带详细说明,代码可直接运行,欢迎交流。
《Redis入门指南》是一本Redis的入门指导书籍,以通俗易懂的方式介绍了Redis基础与实践方面的知识,包括历史与特性、在开发和生产环境中部署运行Redis、数据 ...
Redis入门指南.pdf Redis入门指南.pdf Redis入门指南.pdf