redis入門(九)——jedis的基本使用
目錄1.jedis簡介與安裝
jedis簡介:
jedis client是redis官網推薦的乙個面向j**a客戶端,庫檔案實現了對redis各類api進行封裝呼叫。
jedis的安裝:
j**a操作redis之前,首先需要確保已經安裝了 redis 服務及 j**a redis 驅動。並開啟redis服務。
下面我們來寫乙個測試程式測試jedis是否可以正常使用。測試**如下:
package此時可見程式最後輸出pong。表示我們已經成功連上redis服務。接下來可以通過j**a**操作redis資料庫了。com.zyl.demo.jedisdemo;
import
junit.framework.testcase;
import
redis.clients.jedis.jedis;
public
class jedistest extends
testcase
}
2.jedis的常用api
使用jedis操作redis資料庫跟直接操作redis的方式相同。下面的**使用其中部分命令。(本程式中採用了testng測試框架)
package相應的輸出結果如下com.zyl.demo.jedisdemo;
import
org.testng.annotations.test;
import
redis.clients.jedis.jedis;
import
org.testng.annotations.beforesuite;
import
j**a.util.hashmap;
import
j**a.util.list;
import
j**a.util.map;
import
org.testng.annotations.aftersuite;
public
class
jedisapitest
/*** jedis操作list
*/@test
public
void
testlist()
/*** jedis操作map
*/@test
public
void
testmap()
/*** jedis操作map
*/public
void
testset()
/*** jedis操作map
*/@test
public
void
testzset()
@beforesuite
public
void
beforesuite()
@aftersuite
public
void
aftersuite()
}
3.jedis事物
package com.zyl.demo.jedisdemo;4. jedis連線池import j**a.util.arraylist;
import j**a.util.list;
import redis.clients.jedis.jedis;
import redis.clients.jedis.transaction;
public class testtx else
balance = integer.parseint(jedis.get("balance"));
debt = integer.parseint(jedis.get("debt"));
system.out.println("balance:"+integer.parseint(jedis.get("balance")));
system.out.println("debt:"+integer.parseint(jedis.get("debt")));
}}catch( exception e) finally
system.out.println("your account costs ¥10");
return true;
}public static void main(string args) throws interruptedexception
}
jedis的連線池類似於j**a中的執行緒池。它的作用也類似於執行緒池,在保證併發的同時盡量提高效能。
jedis連線資源的建立與銷毀是很消耗程式效能,所以jedis為我們提供了jedis的池化技術,
jedispool在建立時初始化一些連線資源儲存到連線池中,使用jedis連線資源時不需要建立,
而是從連線池中獲取乙個資源進行redis的操作,使用完畢後,不需要銷毀該jedis連線資源,
而是將該資源歸還給連線池,供其他請求使用。
下面通過乙個簡單的程式說明jedis連線池的使用。首先利用單例模式來寫乙個獲取jedis池的工具類。
package然後通過jedis池新建jedis例項,通過例項往redis寫入資料。com.zyl.demo.jedisdemo;
import
redis.clients.jedis.jedis;
import
redis.clients.jedis.jedispool;
import
redis.clients.jedis.jedispoolconfig;
public
class
jedispooluitl
public
static
jedispool getjedispoolinstance()
}
}return
jedispool;
}public
static
void release(final jedis jedis) }}
packagecom.zyl.demo.jedisdemo;
import
redis.clients.jedis.jedis;
import
redis.clients.jedis.jedispool;
public
class
testjedispool
system.out.println("aa:"+jedis.get("aa"));
jedis.set("aa", "bb");
thread.sleep(2000);//
暫停兩秒。保證資料已經成功寫入redis
system.out.println("aa:"+jedis.get("aa"));
} catch
(exception e)
finally}}
redis中的jedis的使用
連線redis redis的預設埠是6379 jedis jedis new jedis localhost 6379 驗證密碼,如果沒有設定密碼這段 省略 jedis.auth password jedis.connect 連線 jedis.disconnect 斷開連線 setkeys jedi...
Jedis對於Redis的使用(一)
首先建立乙個redisconfig類,用來操作redis的各種引數 public class redisconfig 然後寫乙個工具類做對jedis的簡單封裝 public class jedisutil private static class redisutilholder public sta...
Redis的Java客戶端Jedis
commons pool 1.6.jar jedis 2.1.0.jar 用windows中的eclipse連線虛擬機器的redis的注意事項 禁用linux的防火牆 linux裡執行命令 service iptables stop redis.conf中注釋掉 bind 127.0.0.1 然後 ...