《权限系列》----用redis存储HashMap
来源:互联网 发布:针织短款开衫淘宝网 编辑:程序博客网 时间:2024/05/16 10:58
前言
- 小编为了方便,用的是redis的单机版,redis服务器的搭建过程读者自己去百度吧,这里不多说了。
项目源码
点击这里,到github上下载项目的源码
spring配置文件中,redis的配置
<!-- 配置redis客户端单机版 --><bean id="jedisPool" class="redis.clients.jedis.JedisPool"> <constructor-arg name="host" value="192.168.141.128"></constructor-arg> <constructor-arg name="port" value="6379"></constructor-arg></bean><!-- 配置redis客户端实现类 --><bean id="jedisClientSingle" class="com.spring.mybatis.componet.impl.JedisClientSingle"/>
jedis接口
public interface JedisClient { public String set(String key, String value); public String get(String key); public Long hset(String key, String item, String value); public String hget(String key, String item); public Long incr(String key); public Long decr(String key); public Long expire(String key, int second); public Long ttl(String key); public Long hdel(String key, String item); public String hmset(String key, Map<String,String> map); public List<String> hmget(String key,String filed); public Map<String, String> hgetAll(String key);}
jedis实现类
public class JedisClientSingle implements JedisClient { @Autowired private JedisPool jedisPool; @Override public String hmset(String key, Map<String, String> map) { Jedis jedis = jedisPool.getResource(); String result=jedis.hmset(key,map); jedis.close(); return result; } @Override public List<String> hmget(String key, String filed) { Jedis jedis = jedisPool.getResource(); List<String> result=jedis.hmget(filed); jedis.close(); return result; } @Override public Map<String, String> hgetAll(String key) { Jedis jedis = jedisPool.getResource(); Map<String, String> value; value = jedis.hgetAll(key ); jedis.close(); return value; } @Override public String set(String key, String value) { Jedis jedis = jedisPool.getResource(); String result = jedis.set(key, value); if (jedis!=null){ jedisPool.returnResource(jedis); } return result; } @Override public String get(String key) { Jedis jedis = jedisPool.getResource(); String result = jedis.get(key); if (jedis!=null){ jedisPool.returnResource(jedis); } return result; } @Override public Long hset(String key, String item, String value) { Jedis jedis = jedisPool.getResource(); Long result = jedis.hset(key, item, value); if (jedis!=null){ jedisPool.returnResource(jedis); } return result; } @Override public String hget(String key, String item) { Jedis jedis = jedisPool.getResource(); String result = jedis.hget(key, item); if (jedis!=null){ jedisPool.returnResource(jedis); } return result; } @Override public Long incr(String key) { Jedis jedis = jedisPool.getResource(); Long result = jedis.incr(key); jedis.close(); return result; } @Override public Long decr(String key) { Jedis jedis = jedisPool.getResource(); Long result = jedis.decr(key); jedis.close(); return result; } @Override public Long expire(String key, int second) { Jedis jedis = jedisPool.getResource(); Long result = jedis.expire(key, second); jedis.close(); return result; } @Override public Long ttl(String key) { Jedis jedis = jedisPool.getResource(); Long result = jedis.ttl(key); jedis.close(); return result; } @Override public Long hdel(String key, String item) { Jedis jedis = jedisPool.getResource(); Long result = jedis.hdel(key, item); jedis.close(); return result; }}
小结
- 小编用的Redis客户端的版本号是2.7.2,故可以用
jedis.close()
来归还资源,如果用的是低版本的那么必须用jedisPool.returnResource(jedis);
来归还资源,要不程序运行一段时间后就会卡死。
阅读全文
0 0
- 《权限系列》----用redis存储HashMap
- 实现系列-HashMap究竟如何存储
- Redis系列—持久化存储方案
- 《权限系列》----用SpringAop控制权限一
- 《权限系列》----用SpringAop控制权限二
- 用hashMap存储100个随机数
- Redis系列-存储篇string主要操作函数小结
- Redis系列-存储篇hash主要操作函数小结
- Redis系列-存储篇list主要操作函数小结
- Redis系列-存储篇set主要操作函数小结
- Redis系列-存储篇sorted set主要操作函数小结
- Redis系列-存储篇set主要操作函数小结
- Redis系列-存储篇sorted set主要操作函数小结 .
- Redis系列-存储篇sorted set主要操作函数小结
- Redis系列-存储篇hash主要操作函数小结
- Redis系列-存储篇sorted set使用小结
- Redis系列-存储篇sorted set主要操作函数小结
- Redis系列-存储篇set主要操作函数小结
- Base.js 库 实现 JS 的对象化编程
- 《统计学习方法》第1章 课后题答案
- CSU1225-ACM小组的队列-DP/LCS加强
- 使用GIT进行硬件版本控制
- 冒泡排序
- 《权限系列》----用redis存储HashMap
- CSU1001/1002/1683/1639/1524/1816/1888/1893/1202/1203/1212
- CSU1684-Disastrous Downtime-STL
- tcpdump抓的是哪一层的包?
- java数组api (off, len) 与 (begin, end)的问题
- CSU1772-漫漫上学路-卡特兰数/递推
- bzoj 1041: [HAOI2008]圆上的整点
- CSU1511-残缺的棋盘-模拟/BFS
- CSU1503-点到圆弧的距离-几何