首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Jedis二次开发

背景

Redis作为一个功能强大的nosql数据库,在项目中使用越来越广泛,为了更高效合理使用Redis,Redis提供了多种语言的客户端实现,而Jedis就是java中使用最广泛的Redis客户端实现。

在Jedis客户端jedis.jar包中,有一个jedis.class类,是一个大而全的对应Redis命令的类,方法比较多,使用起来不是很方便,主要存在两方面比较突出的问题:

1、不同的数据结构方法都在同一个类中,使用起来容易混淆或者不够清晰,比如哪些是Hash结构相关的方法;

2、存储或者获取的值,基本都是String类型,而实际使用中往往是一个业务数据模型类,使用时还需要根据业务需求,转换为相应的业务数据模型。

实现

1、jedis类中的方法按照Key,String,List,Set,SortSet,Pub/Sub等分类包装,对应不同的实现类。

2、针对不同实现类中的值部分,实际是将泛型值(是pojo类)转换为json字符串进行存储,或者将json字符串转换为相应的值(pojo类)返回。

封装后使用对比

封装前,调用Hash结构相关的方法,需做更多的方法甄别:

封装后,只需在JedisHash类中调用,并且支持不同的业务数据模型转换:

参考http://www.redis.net.cn/order/" redis命令描述。

https://github.com/Slive/org.slive.jedis

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180920G0EXPS00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券