Redis鏈接工具類

Redis鏈接工具類 java

導包 redis

 

 

測試一下(junit)數據庫

package com.test;

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

/**
 * @author: 肖德子裕
 * @date: 2018/9/19 15:00
 * @description: 測試redis數據庫的使用
 * redis的持久化操做
 * 1)RDB:快照方式將數據從內存保存到磁盤,彷彿以照片方式保存;
 * 優點:無需配置;劣勢:按時間點保存,若是服務器掛了,只能恢復到上一個時間點
 * 2)AOF:以日誌方式保存數據,連操做步驟也保存
 * 優點:及時保存數據;劣勢:日誌裏的步驟都會執行
 */
public class redisTest {
    @Test
    //經過java程序獲取單一的Jedis對象操做數據庫
    public void test(){
        //獲取鏈接對象
        Jedis jedis=new Jedis("localhost",6379);

        //鏈接遠程或者虛擬機的redis;記得開放端口
        //Jedis jedis=new Jedis("IP地址",6379);

        //存儲數據
        jedis.set("username","xdzy");
        //獲取數據
        System.out.println(jedis.get("username"));
    }
}

 

Redis鏈接池(一個資源文件)服務器

  1. redis.maxIdle=30  
  2. redis.minIdle=10  
  3. redis.maxTotal=50  
  4. redis.url=localhost  
  5. redis.port=6379  

 

寫個工具類方便之後用工具

 

package com.utils;

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

import java.io.InputStream;
import java.util.Properties;

/**
 * @author: 肖德子裕
 * @date: 2018/9/19 15:28
 * @description: 獲取jedis對象的工具
 */
public class JedisPoolUtils {
    //設置鏈接池
    private static JedisPool pool=null;

    //靜態代碼塊獲取鏈接池
    static {
        //加載配置文件
        InputStream in=JedisPoolUtils.class.getClassLoader().getResourceAsStream("com/redis.properties");
        Properties pro=new Properties();
        try{
            pro.load(in);
        }catch (Exception e){
            e.printStackTrace();
        }

        //建立鏈接池的配置對象
        JedisPoolConfig poolConfig=new JedisPoolConfig();
        //最大閒置個數
        poolConfig.setMaxIdle(Integer.parseInt(pro.get("redis.maxIdle").toString()));
        //最小閒置個數
        poolConfig.setMinIdle(Integer.parseInt(pro.get("redis.minIdle").toString()));
        //最大鏈接數
        poolConfig.setMaxTotal(Integer.parseInt(pro.get("redis.maxTotal").toString()));
        //建立一個Redis的鏈接池
        pool=new JedisPool(poolConfig,pro.getProperty("redis.url"),Integer.parseInt(pro.get("redis.port").toString()));
    }

    //獲取jedis對象
    public static Jedis getJedis(){
        return pool.getResource();
    }

    public static void main(String[] args) {
        Jedis jedis=getJedis();
        //存儲數據
        jedis.set("username","xdzy");
        //關閉redis軟件,數據就沒有了
        System.out.println(jedis.get("username"));
    }
}
相關文章
相關標籤/搜索