1. 同一個key,更新值后必須重新設定過期時間
代碼:
try { // 1. 設定客戶端IP地址和埠 Jedis jedis = new Jedis("127.0.0.1", 6379); long unixTime = 1608173916000L; for (int i = 0; i < 20; i++) { System.out.println("----------------"); // 快取資料 jedis.set("tt", "test1"); // 設定資料過期時間 long status = jedis.expireAt("tt", unixTime); System.out.println("過期時間設定結果:" + status); System.out.println("快取的資料(設定過期過期):" + jedis.get("tt")); Thread.sleep(1000 * 5); jedis.set("tt", "test2"); // 同一個key不重新設定過期時間時,更新后過期時間失效 // status = jedis.expireAt("tt", unixTime); System.out.println("快取的資料(沒有重新設定過去時間):" + jedis.get("tt")); } // 3.釋放資源 jedis.close(); } catch (InterruptedException e) { e.printStackTrace(); }
輸出:
---------------- 過期時間設定結果:1 快取的資料(設定過期過期):test1 快取的資料(沒有重新設定過去時間):test2 ---------------- 過期時間設定結果:1 快取的資料(設定過期過期):test1 快取的資料(沒有重新設定過去時間):test2 ---------------- 過期時間設定結果:1 快取的資料(設定過期過期):null 快取的資料(沒有重新設定過去時間):test2 ---------------- 過期時間設定結果:1 快取的資料(設定過期過期):null
2. jedis.expireAt()方法時間戳的單位為秒
// 1. 設定客戶端IP地址和埠 Jedis jedis = new Jedis("127.0.0.1", 6379); // 設定時間戳(單位為秒) jedis.expireAt("key", 200L); // 設定過期倒計時(單位為毫秒) jedis.expire("key", 1000 * 5); // 3.釋放資源 jedis.close();
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/236341.html
標籤:Java
