`
zhb8015
  • 浏览: 397513 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Group-logo
Spring Roo杂谈
浏览量:0
社区版块
存档分类
最新评论

jedis池的介绍及使用(转)

阅读更多
一、jedis池的介绍

       相信大家都用过线程池或者是jdbc的连接池,使用池可以减少系统在使用所需对象时创建对象的开销,从而提高系统性能和效率。jedis池也是如此,那么我们该如何使用jedis池呢?

二、jedis池的使用

1.所需jar

   commons-pool.jar、jedis-2.1.0.jar
2.编写Redis配置文件(redis.properties 

本例中代码如下:

#*****************jedis连接参数设置*********************#

#redis服务器ip #   

redis.ip=192.168.8.167

#redis服务器端口号#  

redis.port=6379

#************************jedis池参数设置*******************#  

#jedis的最大分配对象#  

jedis.pool.maxActive=3000

#jedis最大保存idel状态对象数 #  

jedis.pool.maxIdle=1000

#jedis池没有对象返回时,最大等待时间 #  

jedis.pool.maxWait=1500

#jedis调用borrowObject方法时,是否进行有效检查#  

jedis.pool.testOnBorrow=true

#jedis调用returnObject方法时,是否进行有效检查 #  

jedis.pool.testOnReturn=true

3.编写Java实现代码:

package com.zhongying.customer.utils;

import java.io.IOException;

import java.util.Properties;

import redis.clients.jedis.Jedis;

import redis.clients.jedis.JedisPool;

import redis.clients.jedis.JedisPoolConfig;

public class MyJedisPool {

    private static JedisPool pool;    

    //静态代码初始化池配置  

    static {    

      try{

      Properties props = new Properties();

     props.load(MyJedisPool.class.getClassLoader().getResourceAsStream("redis.properties"));

             //创建jedis池配置实例  

             JedisPoolConfig config = new JedisPoolConfig();   

             //设置池配置项值  

             config.setMaxActive(Integer.valueOf(props.getProperty("jedis.pool.maxActive")));    

             config.setMaxIdle(Integer.valueOf(props.getProperty("jedis.pool.maxIdle")));    

             config.setMaxWait(Long.valueOf(props.getProperty("jedis.pool.maxWait")));    

             config.setTestOnBorrow(Boolean.valueOf(props.getProperty("jedis.pool.testOnBorrow")));    

             config.setTestOnReturn(Boolean.valueOf(props.getProperty("jedis.pool.testOnReturn")));    

             //根据配置实例化jedis池  

             pool = new JedisPool(config, props.getProperty("redis.ip"), Integer.valueOf(props.getProperty("redis.port"))); 

      }catch (IOException e) {

e.printStackTrace();

}

    }  

    

    /**获得jedis对象*/

    public static Jedis getJedisObject(){

     return pool.getResource();

    }

    

    /**归还jedis对象*/

    public static void recycleJedisOjbect(Jedis jedis){

     pool.returnResource(jedis);  

    }

      

    /** 

     * 测试jedis池方法 

     */  

    public static void main(String[] args) {

        Jedis jedis = getJedisObject();//获得jedis实例                  

        //获取jedis实例后可以对redis服务进行一系列的操作  

        jedis.set("name""zhuxun");  

        System.out.println(jedis.get("name"));  

        jedis.del("name");  

        System.out.println(jedis.exists("name"));  

        recycleJedisOjbect(jedis); //将 获取的jedis实例对象还回迟中

    }  

}

4.测试执行结果如下:

    zhuxun
    false 

 

分享到:
评论

相关推荐

    SpringBoot学习秒杀一、SpringBoot集成Redis (使用Jedis实现)

    本篇文章将介绍如何通过Jedis库来实现Spring Boot与Redis的集成。 首先,确保你已经在本地安装并启动了Redis服务器。你可以从官方站点下载Redis并按照指示安装。安装完成后,通过命令行运行`redis-cli`,如果看到...

    Redis新手学习使用介绍

    使用Jedis,你需要添加Jedis的依赖到项目中,然后创建Jedis实例,通过连接池管理连接。基本的操作包括设置和获取键值(`set`和`get`),操作哈希(`hset`、`hget`等),向列表中添加元素(`lpush`、`rpop`)等。...

    spring集成redis需要的jar包.rar

    以上是关于"spring集成redis需要的jar包"的基本介绍和集成步骤,这两个库在实际项目中扮演着重要角色,帮助开发者高效地使用Redis进行数据存储和缓存管理。确保正确配置和使用这些库,可以提升应用程序的性能和可...

    learning-redis-boot.zip

    7. **连接池管理**:为了提高性能和资源利用率,通常会使用连接池来管理Redis连接。JedisPoolConfig是Jedis的连接池配置,可以设置最大连接数、空闲连接数、超时时间等参数。 8. **异常处理**:在进行Redis操作时,...

    Java利用Redis实现消息队列的示例代码

    * Java可以使用Jedis连接Redis,并通过JedisPoolConfig设置连接池。 * Java可以使用ObjectUtil工具类来实现序列化和反序列化。 * Java可以使用Message类来实现消息队列的存储和取出。 五、应用场景 * 消息队列可以...

    java的相关连接包,

    以下将详细讲解标题和描述中提及的几个关键知识点:MySQL连接包、Druid连接池包、Redis包以及Json相关包,并简要介绍JSTL JAR包。 1. **MySQL连接包**: MySQL Connector/J是MySQL官方提供的用于Java应用程序的...

    Spring-data-redis使用指南

    - **高性能**: 内置了多种连接池机制,如 Jedis 和 Lettuce,确保高并发场景下的稳定性和性能。 - **社区支持**: 得益于强大的 Spring 社区,Spring Data Redis 拥有活跃的开发者社区和完善的文档支持。 #### 三、...

    Java 中使用 redis

    下面将详细介绍如何在Java中使用Redis以及Spring MVC中的拦截器来获取并保存对象。 1. **安装与配置Redis** - 首先,你需要下载Redis服务器并安装在本地或服务器上,确保其正常运行。 - 在Java项目中,我们需要...

    详解Java在redis中进行对象的缓存

    在上面的代码中,我们使用Jedis连接池来连接Redis,然后将对象序列化成字节数组,并将其存储在Redis中。 获取对象 为了获取存储在Redis中的对象,我们需要将其反序列化成Java对象。下面是一个简单的示例代码: ```...

    SpringMVC+Nutz框架介绍 (2).docx

    【SpringMVC+Nutz框架介绍】 SpringMVC和Nutz框架是两个在企业级应用开发中广泛使用的开源框架。SpringMVC是Spring框架的一部分,主要用于构建Web应用程序的模型-视图-控制器(MVC)架构。Nutz则是一个轻量级的Java...

    springboot中使用redis的方法代码详解

    这里我们排除了默认的Lettuce连接池,转而使用Jedis。Jedis是一个流行的Java Redis客户端,适合简单场景。 然后,在`application.properties`或`application.yml`中配置Redis连接信息: ```properties spring....

    Nginx安装包

    -- redis连接池 -->12 <bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig"/>13 14 <!-- redis连接工厂 -->15 <bean id="connectionFactory" class="org.springframework.data.redis.connection....

    最新Java面试题视频网盘,Java面试题84集、java面试专属及面试必问课程

    面试题包含了不同技术层面的面试问题,同时也能对一些没有面试开发经验的小白给予不可估量的包装, 让你的薪水绝对翻倍, 本人亲试有效.Java面试题84集、java面试专属及面试必问课程,所有的面试题有视屏讲解, 解答方案....

    tomcat8 用redis共享session用于jdk8以上版本

    标题中的“tomcat8 用redis共享session用于jdk8以上版本”揭示了本文将深入探讨在Java开发环境中,如何利用Tomcat8应用服务器与Redis内存数据存储系统来实现跨服务器的Session共享,特别针对JDK8及更高版本。...

    SpringBoot整合Lettuce redis过程解析

    相比之下,Jedis是直连Redis Server的客户端程序,在多线程环境下非线程安全,除非使用连接池,为每个Jedis实例增加物理连接。 现在,让我们开始介绍SpringBoot整合Lettuce Redis的过程: 一、添加依赖 首先,...

Global site tag (gtag.js) - Google Analytics