首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Jedis源码阅读笔记(v3.0.0)

Jedis源码阅读笔记(v3.0.0)

作者头像
日薪月亿
发布于 2019-05-14 14:21:24
发布于 2019-05-14 14:21:24
9810
举报
文章被收录于专栏:技术探索技术探索

jedis的官方api如下: http://xetorthio.github.io/jedis/

1.调用Jedis

我们在调用jedis的时候,一般是如下方式调用Jedis

代码语言:javascript
复制
JedisPool jedisPool = new JedisPool(jedisPoolConfig,host,port,timeout,null);

2. Jedis源码解析

2.1 jedis相关的uml

代码语言:javascript
复制
public class Jedis extends BinaryJedis implements JedisCommands, MultiKeyCommands,
    AdvancedJedisCommands, ScriptingCommands, BasicCommands, ClusterCommands, SentinelCommands, ModuleCommands 
```    
由上图及代码我们可以看出,Jedis类继承了Binary并且实现了 xxxCommands接口
### 2.1.1 BinaryJedis
Jedis在初始化的是会调用BinaryJedis类:
<image src="/image/jedis/binaryJedis.png">

```java
  public BinaryJedis(final String host, final int port, final boolean ssl,
      final SSLSocketFactory sslSocketFactory, final SSLParameters sslParameters,
      final HostnameVerifier hostnameVerifier) {
    client = new Client(host, port, ssl, sslSocketFactory, sslParameters, hostnameVerifier);
  }

BinaryJedis里主要和redis Server进行交互,一系列Commands接口主要是对redis支持的接口进行分类,像BasicCommands主要包含了info、flush等操作,BinaryJedisCommands 主要包含了get、set等操作,MultiKeyBinaryCommands主要包含了一些批量操作的接口例如mset等。

JedisPool初始化

未完待续

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-12-08,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 1.调用Jedis
  • 2. Jedis源码解析
    • 2.1 jedis相关的uml
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档