Jedis链接池对Redis数据操做

【效果图】
linux

【前言】
Redis是经常使用于缓存的非关系型数据库,感受更像增强型的HashMap的用法,依靠Key和Value保存数据。官方推荐用Jedis来操做Redis数据库,使用和JDBC差很少,一半经过链接池做数据操做。git

【Redis安装】
支持windows和linux安装,能够装个windows版本,测试下用例。github

地址:https://github.com/MicrosoftArchive/redis/releases
redis

安装后的命令行启动服务
sql

【测试代码】
github提到须要依赖包数据库

<dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>2.9.0</version>
        <type>jar</type>
        <scope>compile</scope>
</dependency>

测试用例,包括单实例和链接池windows

package jedis.Redis;

import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

public class jedisTest {
    
    @Test
    /*
     * 单实例测试
     */
    public void demoSingle(){
        //1.设置IP和端口
        Jedis jedis =new Jedis("127.0.0.1",6379);
        //2.传入数据
        jedis.set("name", "jedisSingle");
        //3.获取数据
        System.out.println(jedis.get("name")); 
        //4.释放链接
        jedis.close();
    }
    
    @Test
    /*
     * 链接池测试
     */
    public void demoPool(){
        //链接池配置对象-最大链接数-空闲链接数
        JedisPoolConfig config = new JedisPoolConfig();
        config.setMaxTotal(20);
        config.setMaxIdle(10);
        
        //得到链接池
        JedisPool jedisPool= new JedisPool(config,"127.0.0.1",6379);
        //实例化单个链接
        Jedis jedis = null;
        try {
            jedis = jedisPool.getResource();
            jedis.set("name", "jedisPool");
            System.out.println(jedis.get("name")); 
        } catch (Exception e) {
            e.printStackTrace();
        } finally{
            //释放资源
            jedis.close();
            jedisPool.close();
        }                                   
    }   
}

Redis传入取出数据,更相似于HashMap的方式,创建链接释放资源相似于JDBC。尽管存取数据很快,相对于Mysql这些关系型数据库,可是数据类型和非关系的特性,更适合做缓存业务。缓存

相关文章
相关标签/搜索