简单几步:实现Redis的访问

2023-11-09

一:导入jar包,这里有两个:jedis-2.9.0.jar、commons-pool2-2.4.2.jar

二:写一个工具类,我叫做:RedisTools类。代码如下:

import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

public class RedisTools {

	private static JedisPool pool;
	
	//创建线程池对象JedisPool , 池中放的是Jedis对象
	public static JedisPool open(String host,int port){
		if( pool == null){
			//创建池
			JedisPoolConfig config = new JedisPoolConfig();
			//设置最大的线程数,也就是Jedis对象的个数
			config.setMaxTotal(100);
			//设置空闲数
			config.setMaxIdle(2);
			//设置检查对象,保证从Pool中获取的Jedis一定是可用的
			config.setTestOnBorrow(true);
			
			//创建Pool对象
			/**
			 *  poolConfig:配置器
			 *  host:redis的ip
			 *  port: 端口
			 *  timeout:连接Redis的超时,毫秒单位
			 *  password:访问密码
			 * 
			 */
			pool = new JedisPool(config, host, port, 6000, "123456");
			
		}
		return pool;
	}
	
	//关闭线程池,释放资源
	public static void close(){
		if( pool != null){
			pool = null;
		}
	}
}

三、创建一个测试类:RedisString类,代码如下:

import java.util.List;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;

public class RedisString {

	public static void main(String[] args) {
		//访问之前,一定要记得关闭linux的防火墙
		//创建Jedis对象,连接到Redis服务器。
		/**
		 * String host: Redis所在的服务器 ip
		 * int port: Redis的运行端口号
		 */
		String host = "192.168.188.128";
		int port = 6379;
		Jedis jedis  = null;
		JedisPool pool = null;
		
		try{
			//创建Pool
			pool = RedisTools.open(host, port);
			//从Pool中获取Jedis
			jedis = pool.getResource();
			
			//调用Jedis的方法
			//调用Jedis的方法,操作Redis数据
			jedis.set("break", "豆浆和油条111");
			//获取数据 get()
			String value = jedis.get("break");
			System.out.println("break的值:"+value);
			
			//设置多个key-value
			jedis.mset("lunch","饺子111","dinner","小米粥和包子111");
			
			//获取多个key的值
			List<String> values  = jedis.mget("break","lunch","dinner");
			for(String val : values){
				System.out.println(val);
			}
			
			
		}finally{
			//关闭Jedis对象, 把Jedis放回到线程池
			if( jedis != null){
				jedis.close();
			}
		}
		
		
		

	}

}

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

简单几步:实现Redis的访问 的相关文章

随机推荐

  • JavaScript详解

    目录 一 什么是JavaScript 二 JavaScript的引入方式 三 JavaScript的基础语法 3 1 书写语法 3 2 输出语句 3 3 变量 3 4 数据类型 3 5 运算符 3 6 流程控制语句 3 7 函数 四 Jav
  • 笔记本屏幕忽亮忽暗解决方法大全,总有一款适合你

    笔记本屏幕忽亮忽暗解决方法大全 导言 傻逼Intel的傻逼设计 其原本目的是想在屏幕显示暗的东西时能有更高的暗部表现 或者 顺便省电 实际上眼睛导致干涩流泪 解决方法一 在Intel图形设置关闭Intel节能技术 解决方法二 在intel控
  • Element按需引入

    ElementUI网址 https element eleme cn zh CN component quickstart 1 1 安装 babel plugin component npm install babel plugin com
  • Windows网络守门人UserLock教程:如何分配登录时间配额

    UserLock是您的Windows网络守门人 它可以轻松实现有效的Windows和Active Directory网络用户访问控制策略 并严格执行 在UserLock中我们可以定义时间配额规则以限制所选会话类型的周期性连接时间 接下来 我
  • 法将数据写入传输连接: 你的主机中的软件中止了一个已建立的连接_LabVIEW_基于Network Steams 的无损传输技术...

    LabVIEW提供了用于创建分布式应用程序的多种技术的访问权限 LabVIEW 2010中引入的网络流是在这些应用程序之间流传输数据的理想方法 使用网络流 您可以轻松地在网络上或同一台计算机上共享数据 本文是对网络流进行介绍 并讨论了其功能
  • 【通俗易懂】vue中loading功能实现方法

    效果图 我是点击后让他出现loading效果 上代码
  • STM32MP157 AP6236 WiFi蓝牙模块

    STM32MP157 AP6236 WiFi蓝牙模块 1 介绍 2 修改设备树 3 配置Linux内核 3 1 配置支持WiFi设备 3 2 配置支持IEEE 802 11 3 3 配置支持蓝牙 4 配置Buildroot 5 板子配置 6
  • Vue + axios + vant 封装公共请求

    import axios from axios 引入axios import router from router 引入路由 import Toast from vant 引入提示层 export function post obj 调用时
  • 线程的声明周期

    要想实现多线程 必须在主线程中创建新的线程对象 JAVA中使用Thread类及其子类的对象来表示线程 在它的完整的生命周期一般要包括5类 新建 当一个Thread类或子类的对象被声明并创建时 新生的线程对象就处于新建状态 就绪 处于新建状态
  • Matlab读取csv文件csvread函数的使用

    方法一 M csvread FILENAME 读取逗号分隔值格式的文件名 结果直接返回给M 因此 文件只能包含数值 方法二 M csvread FILENAME R C 从逗号分隔值格式的文件中读取数据 从R行和C列开始 R和C从零开始 因
  • PHP cURL获取HTTP响应头

    前言 平时做开发时 经常会用到PHP的cURL扩展 用于请求外部HTTP接口 大多数情况下 我们只需要获取接口返回的响应体 HTTP response body 但如果我们想获取响应头 HTTP response header 那可以怎么做
  • Mac-解决程序包javafx.util不存在

    环境 macos m1芯片 IDEA jdk zulu 8 jdk 1 8 0 322 支持m1芯片的 解决方式 1 更换jdk版本 不使用支持m1芯片的jdk 到官网 链接下载macos的jdk1 8 0 333 且下载成功之后不需要配置
  • Eclipse调整XML源代码文件字体大小

    Eclipse调整XML源代码文件字体大小 Window gt Preferences gt General gt Appearance gt Colors and Fonts gt Basic gt Text Font 点击Edit 设置
  • 简单的书签服务LinkDing

    今天是上海全域静态管理的第 29 天 周三抗原 周四老苏刚做完核酸 居委突然通知后面的不做了 大家一阵慌乱 结果后来又通知继续 这是要闹哪样 据说是怕系统崩溃 周五终于休息了 根据居委会的通告 周二的核酸又发现一管异常 希望昨天的复检正常吧
  • Codeforces Round#808 div.1+div.2题解

    视频讲解 BV1ya411S7KF div 2 A Difference Operations 题目大意 给定长度为 n n n 的数组 a a a 可以进行任意次操作 每次操作选择一个整数
  • Android高德地图获取当前缩放等级及可视区域四个角的坐标

    获取当前缩放等级 未开启定位图层 在fragment中oncreatview生命周期中无法获取到 可以在Onresume中获取 float zoom mAMap getCameraPosition zoom VisibleRegion vi
  • 第5章域内横向移动分析及防御

    域内横向移动投不定在夏杂的内网攻击中被广泛使用的一种技术 尤其是在高级持续威胁 Advanced Persistent Threats APT中 攻击者会利用该技术 以被攻陷的系统为跳板 访问其他域内主机 扩大资产范围 包括跳板机器中的文档
  • 三千预算进卡吧的顺口溜是啥

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 三千预算进卡吧 加钱加到十万八 十核 E7装上去 四路泰坦抱回家 4K 屏幕组三屏 万元液态温度压 固态硬盘装三块 硬盘内存使劲加 键鼠必花几千元 耳机手柄八千八 还有机箱
  • Java异常————argument type mismatch

    今天写程序遇到的错误 Exception in thread main java lang IllegalArgumentException argument type mismatch argument type mismatch 参数类
  • 简单几步:实现Redis的访问

    一 导入jar包 这里有两个 jedis 2 9 0 jar commons pool2 2 4 2 jar 二 写一个工具类 我叫做 RedisTools类 代码如下 import redis clients jedis JedisPoo