本篇運用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數據庫】命令學習筆記——發布訂閱、事務、腳本、連接等命令匯總