初识Jedis

文章主要分两部分,第一部分:简单分析一些类,第二部分:代码示例

一、相关类分析

1、JedisPoolConfig类分析

JedisPoolConfig类是JedisPool的配置类

//最大空闲连接数, 默认8个
config.setMaxIdle(8);//最大连接数, 默认8个
config.setMaxTotal(8);//获取连接时的最大等待毫秒数(如果设置为阻塞时BlockWhenExhausted),如果超时就抛异常, 小于零:阻塞不确定的时间, 默认-1
config.setMaxWaitMillis(-1);//在获取连接的时候检查有效性, 默认false
config.setTestOnBorrow(false);

2、JedisPool(ShardedJedisPool)类分析

Jedis连接池管理类(ShardedJedisPool在使用切片时使用)

//获取Jedis
Jedis getResource()

初始化非切片连接池示例

JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(20);
config.setMaxIdle(5);
config.setMaxWaitMillis(1000l);
config.setTestOnBorrow(true);
jedisPool = new JedisPool(config,"127.0.0.1",6379);

初始化切片连接池示例

JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(20);
config.setMaxIdle(5);
config.setMaxWaitMillis(1000l);
config.setTestOnBorrow(true);

List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>();
shards.add(new JedisShardInfo("127.0.0.1", 6379, "master"));

// 构造池
shardedJedisPool = new ShardedJedisPool(config, shards);

3、Jedis类

Jedis类是操作redis的核心类

 1 //设置键值对
 2 String set(final String key, String value)
 3 //取键值
 4 String get(final String key)
 5 //判断键是否存在
 6 exists(final String... keys)
 7 exists(final String key)
 8 //删除键值对
 9 Long del(final String... keys)
10 Long del(String key)
11 //返回数据类型 "none","string", "list", "set"
12 String type(final String key)
13 //模糊匹配键(使用?和*匹配)
14 //h?llo will match hello hallo hhllo
15 //h*llo will match hllo heeeello
16 Set<String> keys(final String pattern)
17 //随机返回一个key
18 String 
19 //设置过期
20 Long expire(final String key, final int seconds)

实例化示例:(通过JedisPool获取)

jedis = jedisPool.getResource(); 

4、JedisShardInfo类

JedisShardInfo类是Jedis切片信息类

实例化示例:

 JedisShardInfo shard1 = new JedisShardInfo("127.0.0.1", 6379, "master");

 二、使用Jedis操作String类型数据

package com.my.redis.redisTest.test;import java.util.ArrayList;
import java.util.List;import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisShardInfo;
import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool;public class Test1 {private static Jedis jedis;//非切片客户端连接private  JedisPool jedisPool;//非切片连接池private  ShardedJedis shardedJedis;//切片客户端连接private  ShardedJedisPool shardedJedisPool;//切片连接池public Test1(){initialPool(); 
//        initialShardedPool(); 
//        shardedJedis = shardedJedisPool.getResource(); jedis = jedisPool.getResource(); }public static void main(String[] args) {Test1 test = new Test1();jedis.set("name", "limouren");System.out.print(jedis.get("name"));jedis.del("name");System.out.print(jedis.get("name"));}/*** @Description: 初始化非切片连接池  * @author lige*/public void initialPool(){JedisPoolConfig config = new JedisPoolConfig();config.setMaxTotal(20);config.setMaxIdle(5); config.setMaxWaitMillis(1000l); config.setTestOnBorrow(true);jedisPool = new JedisPool(config,"127.0.0.1",6379,0,"Abc12345");}/*** @Description: 初始化切片连接池 * @author lige*/public void initialShardedPool(){JedisPoolConfig config = new JedisPoolConfig();config.setMaxTotal(20);config.setMaxIdle(5); config.setMaxWaitMillis(1000l); config.setTestOnBorrow(true);List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>(); shards.add(new JedisShardInfo("127.0.0.1", 6379, "master")); // 构造池 shardedJedisPool = new ShardedJedisPool(config, shards); }
}

 

 

 

转载于:https://www.cnblogs.com/lige-H/p/8126629.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/467018.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux内存寻址方式

为什么要内存管理&#xff1a;早期的程序都是直接运行在物理地址上&#xff0c;也就是说这个程序所需要的空间不超过该机器的物理内存就不会有问题&#xff0c;但实际场景中都是多任务&#xff0c;多进程的&#xff0c;这种物理地址reserved给各个进程是不靠谱的。举个栗子&…

DotNetNuke 框架总揽

我总觉的学一样东东&#xff0c;最好是先在总体上对他有一个认识&#xff0c;而后才能更好的学习&#xff0c;最近刚好有机会学习DotNetNuke这个东西&#xff0c;就把所学到的都写下来&#xff0c;与大家一起分享&#xff0c;有不对的地方&#xff0c;大家一起讨论&#xff0c;…

迷宫

描述一个由 n * m 个格子组成的迷宫,起点是(1, 1), 终点是(n, m),每次可以向上下左右四个方向任意走一步,并且有些格子是不能走动,求从起点到终点经过每个格子至多一次的走法数。输入第一行一个整数 T 表示有 T 组测试数据。(T < 110)对于每组测试数据:第一行两个整数 n, m,…

day3-python学习笔记(三)字典、元组

一.字典操作、元组操作&#xff08;字典增删改查以及数组&#xff0c;字典嵌套查询&#xff09;# 字符串&#xff0c;整型&#xff0c;list&#xff0c;字典# stus [ # [小傅,25,nan,xxx,20k]# [小傅,25,nan,xxx,20k]# [小傅,25,nan,xxx,20k]# [小傅,25,n…

超全!嵌入式必懂的CAN总线一文讲通了

嵌入式的工程师一般都知道CAN总线广泛应用到汽车中&#xff0c;其实船舰电子设备通信也广泛使用CAN&#xff0c;随着国家对海防的越来越重视&#xff0c;对CAN的需求也会越来越大。这个暑假&#xff0c;通过参加苏州社会实践&#xff0c;去某船舶电气公司实习几周&#xff0c;也…

选择排序法

选择排序法 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 思想&#xff1a; 线性查找的方式找出最小的元素和第一个元素交换&#xff0c;再从剩下的&#xff08;n - 1&#xff09;个数据中&#xff0c;找出最小的元素与第二个元素交换&#xff0c;以…

Gentle中的数据表实体类相关自定义属性的设置和获得

1.自定义 表名属性 TableNameAttribute2.自定义 主键属性 PrimaryKeyAttribute3.自定义 列名属性 TableColumnAttribute 4.数据表person对应的实体类person.cs5.获得person.cs类型实体 对应的表名及字段名 下面的属性代码文件 都直接建立在App_Code下 以方便使用 1.自定义 表名…

蛇形填数 递归

蛇形填数 描述在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n4时方陈为&#xff1a;输入直接输入方陈的维数&#xff0c;即n的值。(n<100)输出输出结果是蛇形方陈。样例输入3 样例输出 1 8 7 2 9 6 3 4 5 #include<iostream> using namespace std; #define N…

WebSocket介绍

WebSocket协议是基于TCP的一种新的协议。WebSocket最初在HTML5规范中被引用为TCP连接&#xff0c;作为基于TCP的套接字API的占位符。它实现了浏览器与服务器全双工(full-duplex)通信。其本质是保持TCP连接&#xff0c;在浏览器和服务端通过Socket进行通信。 本文将使用Python编…

干,认识Audio框架还因此发现一个雷

我们最近出了一个问题&#xff0c;我们点击播放音乐&#xff0c;然后再点击停止播放的时候&#xff0c;喇叭还会输出一段杂音后喇叭才会停止输出。经过排查发现&#xff0c;在代码里面就做了这个功能代码在AudioFlinger.h 里frameworks/av/services/audioflinger/AudioFlinger.…

画图板-- 中点算法画圆

为了能以任意点为圆心画圆&#xff0c;我们可以把圆心先设为视点&#xff08;相当于于将其平移到坐标原点&#xff09;&#xff0c;然后通过中点法扫描转换后&#xff0c;再恢复原来的视点&#xff08;相当于将圆心平移回原来的位置&#xff09;。圆心位于原点的圆有四条对称轴…

插入排序法

插入排序法 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 构思&#xff1a; 1.读入欲排序的数值 2.使用插入排序法 &#xff08;1&#xff09;依序将数值插入 &#xff08;2&#xff09;插入前和已排好好序的每一个数值比较 &#xff08;3&#…

Linux 内核如何描述一个进程?

哈喽&#xff0c;我是吴同学&#xff0c;继续记录我的学习心得。一、关于写文章许多知识&#xff0c;书上或者网络上都有&#xff0c;就算这两个地方都没有&#xff0c;代码里也会有答案。但有时恰恰是 资料太多&#xff0c;反而让人难以检索出有用的信息。面对同样的资料&…

供应商关系管理SRM为企业的节流增贡献

在供应链下游的需求链上&#xff0c;企业为了增加市场份额、提高销售收入&#xff0c;更为重视面向客户的管理和信息化管理方面的投入&#xff0c;纷纷引入客户关系管理CRM的管理理念和信息化系统&#xff0c;在“客户第一”的经营策略下借助IT技术的手段来提高对客户的服务水平…

C小项目——电子词典

C语言项目——查字典 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 【项目需求描述】 一、单词查询 给定文本文件“dict.txt”&#xff0c;该文件用于存储词库。词库为“英-汉”&#xff0c;“汉-英”双语词典&#xff0c;每个单词和其解释的格式固…

线性表的顺序存储的基本操作

插入&#xff1a; #include<stdio.h> #define N 100 typedef struct s {int elem[N];int last; }Seqlist; int Locate(Seqlist l,int e)//查找 {int i0;while(i<l.last&&l.elem[i]!e)i;if(i<l.last)return i1;elsereturn 0; } int DelList(Seqlist *l,int …

canvas生成二维码(2)

不同的插件实现相同的效果&#xff0c;用起来更简洁一些&#xff0c;引用插件qrcode.js 创建一个新的QRCode对象&#xff0c;利用动漫节点和data数据进行复制&#xff0c;实现生成图片img的二维码&#xff1a; 详细见下方代码&#xff1a; <!DOCTYPE html PUBLIC "-//W…

UART/I2C/SPI/1-wire四大通信接口的神解释

1、 裘千丈轻功水上漂之UART射雕英雄传中的裘千丈说&#xff0c;UART就是我的轻功水上漂过河。想从河上过&#xff08;通信&#xff09;&#xff0c;提前布暗桩&#xff0c;行走时步伐按桩距固定&#xff08;波特率提前确定&#xff09;&#xff0c;步幅太大或太小都会落水。为…

动漫迷看的一点动漫

个人看过的动漫 (注&#xff1a;排名不分先后) 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 1、魔法科高中的劣等生&#xff1a;国立魔法大学附属第一高校——通称“魔法科高校”&#xff0c;是由成绩优秀的“一科生”&#xff0c;和作为一科生替补的…

last_kmsg和ram console

相关文章Android 7.1使用脚本保存LOGCAT和KMSG日志到文件首先&#xff0c;在kernel里面通过printk吐log的时候会是下面的一个过程&#xff1a;printk会将信息格式化到kernel log buffer里面去。然后将这些格式化信息送到console去&#xff0c;在我们的系统里面有两个console&am…