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 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!