java如何操作非關系型數據庫redis
redis簡單介紹:
是一種Nosql數據庫,Nosql全稱是Not Only SQL,是一種不同于關系型數據庫的數據庫管理系統設計方式。對NoSQL最普遍的解釋是“非關系型的”,強調Key-Value Stores和文檔數據庫的優點,而不是單純的反對RDBMSSo what can I do with Jedis?
All of the following redis features are supported:
? Sorting
? Connection handling
? Commands operating on any kind of values
? Commands operating on string values
? Commands operating on hashes
? Commands operating on lists
? Commands operating on sets
? Commands operating on sorted sets
? Transactions
? Pipelining
? Publish/Subscribe
? Persistence control commands
? Remote server control commands
? Connection pooling
? Sharding (MD5, MurmureHash)
? Key-tags for sharding
? Sharding with pipelining
? redis中文官方網站: http://redis.cn/
? redis中文版命令參考: http://redis.readthedocs.org/en/latest/index.html
? redis (Win32/64 Du?an Majki?.): https://github.com/dmajkic/redis/downloads
? jedis 源碼: https://github.com/xetorthio/jedis
? jedis jar: https://github.com/xetorthio/jedis/downloads
在java程序中,使用redis步驟:
下載redis
redis (Win32/64 Du?an Majki?.):下載地址: https://github.com/dmajkic/redis/downloads

下載黃線部分
下載完成后,解壓

打開黃線文件

起動redis-server.exe就可以進行如下測試了,不過在測試前還需要下載jedis開發包哦,注意在測試時,不要關閉redis-server.exe
注意,在做以下測試時,需要打開redis服務端
下載jedis開發包

jedis-2.1.0.jar是目前最新的開發包,里面增加了許多 新的方法。
如下圖示例:

1.將jedis開發包加入到lib目錄下

Java中使用redis示例程序:
Jedis jedis = new Jedis("localhost",6379);
jedis.set("foo", "bar");
String value = jedis.get("foo");
測試代碼
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import redis.clients.jedis.Jedis;
public class Test01 {
public static void main(String[] args) {
// 連接
Jedis jedis = new Jedis("localhost", 6379);
// 對字符串的操作
// 給名稱為apple的key賦值
jedis.set("apple", "www.apple.com");
// 返回名稱為apple的key的value
// System.out.println(jedis.get("apple"));
// 將value追加到key原來值的末尾
// System.out.println(jedis.append("db", "mysql"));
// System.out.println(jedis.get("db"));
// 若key不存在,即把key設為value
// System.out.println(jedis.exists("myphone"));
// System.out.println(jedis.append("myphone", "nokia"));
// 對list操作
// 將student1插入到teacher列表的表頭
// System.out.println(jedis.lpush("teacher", "student1"));
// 將student2插入到teacher列表的表頭
// System.out.println(jedis.lpush("teacher","student2"));
// 返回teacher列表的長度
// System.out.println(jedis.llen("teacher"));
// 返回teacher列表中的元素,下表從0開始
// System.out.println(jedis.lrange("teacher", 0, -1));
// java命令遍歷
/*
* List<String> list=jedis.lrange("teacher", 0, -1); for (Iterator
* iterator = list.iterator(); iterator.hasNext();) { String string =
* (String) iterator.next(); System.out.println(string); }
*/
// set操作
// 向名稱為dept的set中添加元素,成功返回1,失敗返回0,無序
System.out.println(jedis.sadd("dept", "張三"));
System.out.println(jedis.sadd("dept", "老馬"));
jedis.sadd("dept", "老馬2");
jedis.sadd("dept", "老馬3");
jedis.sadd("dept", "老馬4");
jedis.sadd("dept", "老馬5");
jedis.sadd("dept", "老馬6");
// 返回dept的所有元素
// System.out.println(jedis.smembers("dept"));
// 遍歷
/*
* Set<String> set=jedis.smembers("dept"); for (Iterator iterator =
* set.iterator(); iterator.hasNext();) { String string = (String)
* iterator.next(); System.out.println(string); }
*/
// 返回dept中的元素個數 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!