Redis(十四):Jedis
生活随笔
收集整理的這篇文章主要介紹了
Redis(十四):Jedis
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Jedis是Redis官方推薦的Java連接開發(fā)工具。要在Java開發(fā)中使用好Redis中間件,必須對(duì)Jedis熟悉才能寫成漂亮的代碼!
1、新建Maven工程,導(dǎo)入對(duì)應(yīng)依賴
<dependencies><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>3.2.0</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.62</version></dependency></dependencies>2、編碼測(cè)試
- 連接數(shù)據(jù)庫(kù)
- 操作命令
- 斷開連接
輸出 : PONG
3、對(duì)Key操作的命令
package com.lizh.test;import redis.clients.jedis.Jedis;@Test public void testKey() throws InterruptedException{System.out.println("清空數(shù)據(jù):"+jedis.flushDB());System.out.println("判斷某個(gè)鍵是否存在:"+jedis.exists("username"));System.out.println("新增<'username','zzh'>的鍵值對(duì):"+jedis.set("username", "zzh"));System.out.println(jedis.exists("name"));System.out.println("新增<'password','password'>的鍵值對(duì):"+jedis.set("password", "password"));System.out.print("系統(tǒng)中所有的鍵如下:");Set<String> keys = jedis.keys("*");System.out.println(keys);System.out.println("刪除鍵password:"+jedis.del("password"));System.out.println("判斷鍵password是否存在:"+jedis.exists("password"));System.out.println("設(shè)置鍵username的過期時(shí)間為5s:"+jedis.expire("username", 5));TimeUnit.SECONDS.sleep(2);System.out.println("查看鍵username的剩余生存時(shí)間:"+jedis.ttl("username"));System.out.println("移除鍵username的生存時(shí)間:"+jedis.persist("username"));System.out.println("查看鍵username的剩余生存時(shí)間:"+jedis.ttl("username"));System.out.println("查看鍵username所存儲(chǔ)的值的類型:"+jedis.type("username"));}輸出結(jié)果
清空數(shù)據(jù):OK 判斷某個(gè)鍵是否存在:false 新增<'username','zzh'>的鍵值對(duì):OK false 新增<'password','password'>的鍵值對(duì):OK 系統(tǒng)中所有的鍵如下:[username, password] 刪除鍵password:1 判斷鍵password是否存在:false 設(shè)置鍵username的過期時(shí)間為5s:1 查看鍵username的剩余生存時(shí)間:3 移除鍵username的生存時(shí)間:1 查看鍵username的剩余生存時(shí)間:-1 查看鍵username所存儲(chǔ)的值的類型:string4、通過Jedis理解Redis事務(wù)
package com.lizh.test;import com.alibaba.fastjson.JSONObject; import redis.clients.jedis.Jedis; import redis.clients.jedis.Transaction;public class TestPing {public static void main(String[] args) {//1、 new 一個(gè) Jedis 對(duì)象Jedis jedis = new Jedis("127.0.0.1",6379);//2、輸入密碼jedis.auth("123456");//3、開啟事務(wù)Transaction multi = jedis.multi();JSONObject jsonObject = new JSONObject();jsonObject.put("k1","v1");jsonObject.put("k2","v2");String result = jsonObject.toJSONString();multi.set("k1",result);try {multi.set("s1","v1");multi.set("s2","v2");int i = 1/0; //代碼執(zhí)行異常,事務(wù)拋出失敗multi.exec(); //執(zhí)行事務(wù)} catch (Exception e){multi.discard(); //移除事務(wù)e.printStackTrace();}finally {System.out.println(jedis.get("s1"));System.out.println(jedis.get("s2"));jedis.close(); //關(guān)閉連接}}}5、小結(jié)
Jedis中jedis對(duì)象的方法是與Redis的命令一一對(duì)應(yīng)的。
總結(jié)
以上是生活随笔為你收集整理的Redis(十四):Jedis的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SSL双向认证和SSL单向认证的区别
- 下一篇: linux cmake编译源码,linu