Jedis操作Redis數(shù)據(jù)庫的方法
本文實例為大家分享了Jedis操作Redis數(shù)據(jù)庫的具體代碼,供大家參考,具體內(nèi)容如下
關(guān)于NoSQL的介紹不寫了,直接上代碼
第一步導(dǎo)包,不多講
基本操作:
package demo; import org.junit.Test; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; public class Demo { // 通過Java程序訪問Redis數(shù)據(jù)庫 @Test public void test1() { // 獲得連接對象 Jedis jedis = new Jedis("localhost", 6379); // 存儲、獲得數(shù)據(jù) jedis.set("username", "yiqing"); String username = jedis.get("username"); System.out.println(username); } // Jedis連接池獲得jedis連接對象 @Test public void test2() { // 配置并創(chuàng)建redis連接池 JedisPoolConfig poolconfig = new JedisPoolConfig(); // 最大(?。╅e置個數(shù) poolconfig.setMaxIdle(30); poolconfig.setMinIdle(10); // 最大連接數(shù) poolconfig.setMaxTotal(50); JedisPool pool = new JedisPool(poolconfig, "localhost", 6379); // 獲取資源 Jedis jedis = pool.getResource(); jedis.set("username", "yiqing"); String username = jedis.get("username"); System.out.println(username); // 關(guān)閉資源 jedis.close(); // 開發(fā)中不會關(guān)閉連接池 // pool.close(); } }
注意:如果運(yùn)行失敗,那么原因只有一條:沒有打開Redis:
好的,我們可以用可視化工具觀察下:
保存成功?。?/p>
接下來:
我們需要抽取一個工具類,方便操作:
package demo; import java.io.IOException; import java.io.InputStream; import java.util.Properties; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; public class JedisPoolUtils { private static JedisPool pool = null; static { // 加載配置文件 InputStream in = JedisPoolUtils.class.getClassLoader().getResourceAsStream("redis.properties"); Properties pro = new Properties(); try { pro.load(in); } catch (IOException e) { e.printStackTrace(); } // 獲得池子對象 JedisPoolConfig poolConfig = new JedisPoolConfig(); poolConfig.setMaxIdle(Integer.parseInt(pro.get("redis.maxIdle").toString()));// 最大閑置個數(shù) poolConfig.setMinIdle(Integer.parseInt(pro.get("redis.minIdle").toString()));// 最小閑置個數(shù) poolConfig.setMaxTotal(Integer.parseInt(pro.get("redis.maxTotal").toString()));// 最大連接數(shù) pool = new JedisPool(poolConfig, pro.getProperty("redis.url"), Integer.parseInt(pro.get("redis.port").toString())); } // 獲得Jedis資源 public static Jedis getJedis() { return pool.getResource(); } }
在src下新建一個文件:redis.properties:
redis.maxIdle=30 redis.minIdle=10 redis.maxTotal=100 redis.url=localhost redis.port=6379
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot?AOP統(tǒng)一處理Web請求日志的示例代碼
springboot有很多方法處理日志,例如攔截器,aop切面,service中代碼記錄等,下面這篇文章主要給大家介紹了關(guān)于SpringBoot?AOP統(tǒng)一處理Web請求日志的相關(guān)資料,需要的朋友可以參考下2023-02-02Java Socket編程簡介_動力節(jié)點Java學(xué)院整理
這篇文章主要介紹了Java Socket編程簡介的相關(guān)知識,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-05-05Spring中的@ConditionalOnProperty注解使用詳解
這篇文章主要介紹了Spring中的@ConditionalOnProperty注解使用詳解,在 spring boot 中有時候需要控制配置類是否生效,可以使用 @ConditionalOnProperty 注解來控制 @Configuration 是否生效,需要的朋友可以參考下2024-01-01使用AbstractRoutingDataSource實現(xiàn)數(shù)據(jù)源動態(tài)切換的實例
AbstractRoutingDataSource 是 Spring 框架提供的一個抽象類,用于實現(xiàn)動態(tài)數(shù)據(jù)源路由,這個類主要用于多數(shù)據(jù)源場景,其中可以根據(jù)不同的條件動態(tài)地切換到不同的數(shù)據(jù)源,本文給大家介紹了如何使用AbstractRoutingDataSource實現(xiàn)數(shù)據(jù)源動態(tài)切換,需要的朋友可以參考下2024-03-03