1. 程式人生 > >【JAVA】使用 jedis操作redis——連線、儲存資料、切庫等

【JAVA】使用 jedis操作redis——連線、儲存資料、切庫等

本篇運用Java呼叫jedis包(jedis線上文件API ),做簡單操作例項。

安裝jedis

1. 2.9.0 jar 版本下載: jedis-2.9.0.jar

2. 新建專案,新增該驅動包 

 

連線到 redis 服務

package com.summer.jedis;

import redis.clients.jedis.Jedis;

public class RedisJava {

	public static void main(String[] args) {
	    Jedis jedis = new Jedis("58.87.117.26",6379);
	    //登入密碼
	    jedis.auth("summer");
            System.out.println("連線成功");
            //檢視服務是否執行
            System.out.println("服務正在執行: "+jedis.ping());
		
	}
	
}

執行結果:

連線成功
服務正在執行: PONG

為了便於呼叫,連線服務方法封裝成類。本人使用junit-4.10.jar,網上下載安裝方式同jedis。

package com.summer.jedis;

import redis.clients.jedis.Jedis;

public class RedisJava {
	
	public Jedis connectRedis() {
		Jedis jedis;
        //連線本地的 Redis 服務
		jedis = new Jedis("58.87.117.26",6379);
		//登入密碼
        jedis.auth("summer");
        System.out.println("連線成功");
        //檢視服務是否執行
        System.out.println("服務正在執行: "+jedis.ping());
		return jedis;
    }
}

-----------------------------------------------------------
package com.summer.jedis;

import org.junit.Test;

public class TestJedis {
	@Test
	public void test(){
		//測試連線redis
		new RedisJava().connectRedis();

	}
}

 

jedis儲存資料操作

package com.summer.jedis;

import java.util.Iterator;
import java.util.List;
import java.util.Set;

import redis.clients.jedis.Jedis;
/***
 * redis儲存資料操作
 * @author lj
 *
 */
public class RedisJava02 {
	public static Jedis jedis;
	
	/**
	 * Redis Java String(字串) 例項
	 */
	public void redisStringJava(){
		// 連線資料庫
		jedis = new RedisJava().connectRedis();
		
		//設定 redis 字串資料
	    jedis.set("jedis_string", "my name is summer!");
	    
	    // 獲取儲存的資料並輸出
	    System.out.println("redis 儲存的字串為: "+ jedis.get("jedis_string"));
		
	}
	/**
	 * Redis Java List(列表) 例項
	 */
	public void redisListJava(){
		// 連線資料庫
		jedis = new RedisJava().connectRedis();
		
		//儲存資料到列表中
	    jedis.lpush("site-list", "Runoob");
	    jedis.lpush("site-list", "Google");
	    jedis.lpush("site-list", "Taobao");
	    // 獲取儲存的資料並輸出
	    List<String> list = jedis.lrange("site-list", 0 ,2);
	    for(int i=0; i<list.size(); i++) {
	        System.out.println("列表項為: "+list.get(i));
	    }
	}
	/**
	 * Redis Java Keys 例項
	 */
	public void redisKeyJava(){
		// 連線資料庫
		jedis = new RedisJava().connectRedis();
		
		// 獲取資料並輸出
	    Set<String> keys = jedis.keys("*"); 
	    Iterator<String> it=keys.iterator() ;   
	    while(it.hasNext()){   
	        String key = it.next();   
	        System.out.println(key);   
	    }
	}

	/**
	 * Redis Java hash 例項
	 */
	public void redisHashJava(){
		// 連線資料庫
		jedis = new RedisJava().connectRedis();

		// 獲取資料並輸出
		jedis.hset("favorite","color","black");
		jedis.hset("favorite","food","ice_cream");
		jedis.hset("favorite","animal","dog");
		Map<String, String> map = new HashMap<String, String>();
		map = jedis.hgetAll("favorite") ;   
		for(Map.Entry<String, String> m: map.entrySet()){
			System.out.println("Key:" + m.getKey()+"; value:"+m.getValue());
			
		}
	}

}

編寫測試類依次執行 

package com.summer.jedis;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@RunWith(JUnit4.class)
public class TestJedis {
	@Test
	public void test(){
		//測試連線redis
		//new RedisJava().connectRedis();
		//測試Redis Java String(字串) 例項
		//new RedisJava02().redisStringJava();
		//測試Redis Java List(列表) 例項
		//new RedisJava02().redisListJava();
		//測試Redis Java Keys 例項
		new RedisJava02().redisKeyJava();
	}
}

連線成功
服務正在執行: PONG
redis 儲存的字串為: my name is summer!

----------------------------------------------------------------

連線成功
服務正在執行: PONG
列表項為: Taobao
列表項為: Google
列表項為: Runoob

----------------------------------------------------------------

連線成功
服務正在執行: PONG
jedis_string
site-list

----------------------------------------------------------------
連線成功
服務正在執行: PONG
選擇資料庫1狀態: OK
Key:color; value:black
Key:animal; value:dog
Key:food; value:ice_cream

----------------------------------------------------------------

其他命令

//選擇資料庫
System.out.println("選擇資料庫1狀態: "+jedis.select(1));

連線成功
服務正在執行: PONG
選擇資料庫1狀態: OK

 

上一篇:【Redis資料庫】命令學習筆記——釋出訂閱、事務、指令碼、連線等命令彙總