6.java連線Redis
阿新 • • 發佈:2020-07-22
Jedis介紹
Redis不僅是使用命令來操作,現在基本上主流的語言(java、C、C#、C++、php、Node.js、Go等)都有客戶端支援。
在官方網站裡列一些Java的客戶端,有Jedis、Redisson、Jredis、JDBC-Redis、等;其中官方推薦使用Jedis和Redisson。在企業中用的最多的就是Jedis,下面我們就重點學習下Jedis。
Jedis同樣也是託管在github上,地址:https://github.com/xetorthio/jedis
java入門程式
依賴:
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-pool2--> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>2.3</version> </dependency> <!-- https://mvnrepository.com/artifact/redis.clients/jedis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.7.0</version> </dependency>
程式碼:
public class Demo1 {
/**
* 單例項連線redis資料庫
*/
@Test
public void first(){
Jedis jedis = new Jedis("192.168.157.133", 6379);
jedis.set("addr","北京");
System.out.println(jedis.get("addr"));
}
}
連線池
/** * 連線池 */ @Test public void second(){ // 1.設定連線池的配置物件 JedisPoolConfig config = new JedisPoolConfig(); // 2.設定池中最大連線數[可選] config.setMaxTotal(50); // 3.設定空閒時間池中的連線數[可選] config.setMaxIdle(10); // 4. 設定連線池物件 JedisPool pool = new JedisPool(config, "192.168.157.133", 6379); // 5.從池中獲取連線物件 Jedis jedis = pool.getResource(); System.out.println(jedis.get("addr")); // 6.連線歸還池中 }
定義連線池工具類
package utils; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; public class JedisUtils { // 1.定義一個連線池物件 private static final JedisPool POOL; /** * 靜態程式碼塊初始化連線池物件: * 靜態程式碼特點: 隨著類的載入而執行,而且只執行一次,它僅能初始化類變數,即static修飾的資料成員。 * */ static { // 1.設定連線池的配置物件 JedisPoolConfig config = new JedisPoolConfig(); // 2.設定池中最大連線數[可選] config.setMaxTotal(50); // 3.設定空閒時間池中的連線數[可選] config.setMaxIdle(10); // 4. 設定連線池物件 POOL = new JedisPool(config, "192.168.157.133", 6379); } /** * 從連線池獲取連線方法 */ public static Jedis getJedis() { return POOL.getResource(); } }