jedis的连接池
1、需要先打开虚拟机,并开启Linux系统的端口号:6379:
其中,第一行代码为修改字符编码格式,解决SSH中文乱码问题。
2、开启redis:
3、利用连接池实现数据的存取:
(1)代码实现:
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class JedisDemo {
public void test(){
//对连接池进行配置
JedisPoolConfig jedisPoolConfig=new JedisPoolConfig();
jedisPoolConfig.setMaxIdle();//最大闲置个数
jedisPoolConfig.setMinIdle();//最小闲置个数
jedisPoolConfig.setMaxTotal();//最大连接数
//创建一个redis连接池
JedisPool jedisPool=new JedisPool(jedisPoolConfig,"192.168.204.128",);
//从连接池中获取redis的连接资源
Jedis jedis=jedisPool.getResource();
//对数据库进行存取操作
jedis.set("河南","郑州");
System.out.println(jedis.get("河南"));
//释放资源
jedis.close();
jedisPool.close();
}
public static void main(String[]args){
JedisDemo jedisDemo=new JedisDemo();
jedisDemo.test();
}
}
(2)运行结果:
4、连接池工具类:
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class JedisDemo {
private static JedisPool jedisPool= null;
static{
//对连接池进行配置
JedisPoolConfig jedisPoolConfig=new JedisPoolConfig();
jedisPoolConfig.setMaxIdle();//最大闲置个数
jedisPoolConfig.setMinIdle();//最小闲置个数
jedisPoolConfig.setMaxTotal();//最大连接数
//创建一个redis连接池
jedisPool=new JedisPool(jedisPoolConfig,"192.168.204.128",);
}
public static Jedis getJedis(){//从连接池中获取redis的连接资源
return jedisPool.getResource();
}
public static void main(String[] args){
Jedis jedis=getJedis();
String add=jedis.get("河南");
System.out.println(add);
}
}
5、添加配置文件的工具类:
(1)配置文件:
redis.maxIdle=
redis.minIdle=
redis.maxTotal=
redis.url=192.168.204.128
redis.port=
(2)工具类:
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties; public class JedisDemo {
private static JedisPool jedisPool= null;
static{
//读取配置文件
InputStream inputStream=JedisDemo.class.getClassLoader().getResourceAsStream("redis.properties");
Properties properties=new Properties();
try {
properties.load(inputStream);
} catch (IOException e) {
e.printStackTrace();
} //对连接池进行配置
JedisPoolConfig jedisPoolConfig=new JedisPoolConfig();
jedisPoolConfig.setMaxIdle(Integer.parseInt(properties.get("redis.maxIdle").toString()));//最大闲置个数
jedisPoolConfig.setMinIdle(Integer.parseInt(properties.get("redis.minIdle").toString()));//最小闲置个数
jedisPoolConfig.setMaxTotal(Integer.parseInt(properties.get("redis.maxTotal").toString()));//最大连接数
//创建一个redis连接池
jedisPool=new JedisPool(jedisPoolConfig,properties.getProperty("redis.url"),Integer.parseInt(properties.get("redis.port").toString()));
}
public static Jedis getJedis(){//从连接池中获取redis的连接资源
return jedisPool.getResource();
}
public static void main(String[] args){
Jedis jedis=getJedis();
String add=jedis.get("河南");
System.out.println(add);
}
}
读取配置文件中的信息,在有关的参数改变时,只需要改变配置文件即可。
jedis的连接池的更多相关文章
- 在spring中如何生成一个bean (一个对象,比如jedis的连接池对象)【我】
在spring中,要想生成一个单例对象(比如jedis的连接池对象) 方法1: 在 spring中用 bean 标签生成(反正就是让spring生成并管理单例的对象) 方法2: 把要生成的单例对象类, ...
- Jedis分片连接池
[http://blog.csdn.net/lang_man_xing/article/details/38405269] 一下内容来自网络,但是很多细节没有写出来,所以我经过自己琢磨,终于找到原 ...
- Jedis编程设计:连接池
Jedis作为redis的最佳客户端,它提供了连接池的特性,"连接池"在通常情况下可以有效的提高应用的通信能力,并且这是一种良好的设计模式.Jedis的连接池设计基于apa ...
- 为什么要用Jedis连接池+浅谈jedis连接池使用
为什么要使用Jedis连接池 Redis作为缓存数据库理论上和MySQL一样需要客户端和服务端建立起来连接进行相关操作,使用MySQL的时候相信大家都会使用一款开源的连接池,例如C3P0.因为直连会消 ...
- Jedis 连接池的基本使用
jedis直连 每次操作都会创建一个jedis对象,执行完毕后关闭连接后释放,对应的就是一次Tcp连接. jedis连接池 预先生成一批jedis连接对象放入连接池中,当需要对redis进行操作时从连 ...
- 连接池你用对了吗?一次Unexpected end of stream异常的排查
能收获什么? 更加了解TCP协议 Redis与客户端关闭连接的机制 基于Apache Common连接池的参数调优 Linux网络抓包 情况简介 近期迁移了部分应用到K8s中,业务开发人员反馈说,会发 ...
- 【Azure Redis 缓存 Azure Cache For Redis】Redis连接池
问题描述 Redis根据定价层说明,不同级别支持的连接数最多可达4万(同时),但是当短时间又大量连接请求建立的时候,Redis服务的服务压力非常大,到达100%.严重影响了高响应的要求.最严重时,经常 ...
- jedis连接池详解(Redis)
转自:http://tianxingzhe.blog.51cto.com/3390077/1684306 原子性(atomicity): 一个事务是一个不可分割的最小工作单位,事务中包括的诸操作要么都 ...
- Jedis连接池使用
构建redis连接池,返还到连接池 private static JedisPool jedisPool = null; private static Jedis jedis; static { je ...
随机推荐
- ubuntu 使用阿里云镜像源快速搭建kubernetes 1.15.2集群
一.概述 搭建k8s集群时,需要访问google,下载相关镜像以及安装软件,非常麻烦. 正好阿里云提供了k8s的更新源,国内用户就可以直接使用了. 二.环境介绍 操作系统 主机名 IP地址 功能 配置 ...
- Eclipse创建ssm项目
1.创建Maven项目 2.勾选上面的 3.打成war包的形式 4.配置webapp.xml Project Facets——Dynamic Wed Module 2.5 ——然后点击下面的提示 5 ...
- mybatis使用foreach处理List中的Map mybatis-----传入传出多个参数,都是map或list,批量更新
https://nannan408.iteye.com/blog/2170470 https://blog.csdn.net/xingzhishen/article/details/86424395 ...
- MongoDB和Java(6):Spring Data整合MongoDB副本集、分片集群
最近花了一些时间学习了下MongoDB数据库,感觉还是比较全面系统的,涉及了软件安装.客户端操作.安全认证.副本集和分布式集群搭建,以及使用Spring Data连接MongoDB进行数据操作,收获很 ...
- loadrunner通过字符串左右边界提取字符串
/****** *函数名称:strcut *函数说明:通过左边界.右边界,从字符串中截取子字符串 *注意事项:会申请新的内存,需要手动释放 ******/ void strcut(char *strS ...
- js基本包装类型及Math对象(八)
一.基本包装类型[继承于Object类型]1.Number().String().Boolean()引用数据类型[包装类型]分别对应的基本数据类型为number.string.boolean. 2.当 ...
- PHP防止SQL注入攻击和XSS攻击
代码如下: /** * 防SQL注入和XSS攻击 * @param $arr */ function SafeFilter (&$arr) { $ra=Array('/([\x00-\x08, ...
- js switch case 判断的是绝对相对===,值和类型都要相等
js switch case 判断的是绝对相对===,值和类型都要相等
- Ubuntu16.04 网络配置
Ubuntu 网络配置 安装Ubuntu操作系统之后,为了通过Xshell连接主机,或者连接其他主机.需要进行如下网络配置和ssh服务配置. 1 网络配置 1.1 修改网络配置信息 sudo vi / ...
- idea中flink启动报错org.apache.flink.api.common.ExecutionConfig$GlobalJobParameters
启动时出现如下报错: Caused by: java.lang.ClassNotFoundException: org.apache.flink.api.common.ExecutionConfig$ ...