一:什麼是redis服務器java
redis是一個key-value存儲系統。和Memcached相似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集並集和差集及更豐富的操做,並且這些操做都是原子性的。在此基礎上,redis支持各類不一樣方式的排序。與memcached同樣,爲了保證效率,數據都是緩存在內存中。區別的是redis會週期性的把更新的數據寫入磁盤或者把修改操做寫入追加的記錄文件,而且在此基礎上實現了master-slave(主從)同步。redis
二:java使用redis服務器的簡單實例緩存
1:下載redis服務器,能夠根據操做系統版本的不一樣,下載不一樣的redis,個人電腦是win7 32位:服務器
連接:http://pan.baidu.com/s/1bpERkT5 密碼:ek2dmemcached
2:下載 jedis-2.9.0.jar redis驅動jar包操作系統
3:啓動redis服務器對象
而後就能夠寫程序訪問了。blog
public class RedisService { public static Jedis jedis; static { init(); } /** * 初始化jedis對象,和redis服務器創建鏈接,本地,默認端口爲6379 */ public static void init() { jedis = new Jedis("localhost", 6379); System.out.println("鏈接成功"); System.out.println("服務正在運行: " + jedis.ping()); } public static void main(String[] args) { setString(); setList(); getKeys(); } /** * 向redis服務器放字符串數據 */ public static void setString() { jedis.set("runoobkey", "www.runoob.com"); System.out.println("redis 存儲的字符串爲: " + jedis.get("runoobkey")); } /** * 放list數據 */ public static void setList() { 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)); } } public static void getKeys() { Set<String> keys = jedis.keys("*"); Iterator<String> it = keys.iterator(); while (it.hasNext()) { String key = it.next(); System.out.println(key); } } }
運行結果:排序
鏈接成功 服務正在運行: PONG redis 存儲的字符串爲: www.runoob.com 列表項爲: Taobao 列表項爲: Google 列表項爲: Runoob runoobkey site-list