Jedis操作Redis數(shù)據(jù)庫的方法
本文實(shí)例為大家分享了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置個(gè)數(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:

好的,我們可以用可視化工具觀察下:

保存成功!!
接下來:
我們需要抽取一個(gè)工具類,方便操作:
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()));// 最大閑置個(gè)數(shù)
poolConfig.setMinIdle(Integer.parseInt(pro.get("redis.minIdle").toString()));// 最小閑置個(gè)數(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下新建一個(gè)文件:redis.properties:
redis.maxIdle=30 redis.minIdle=10 redis.maxTotal=100 redis.url=localhost redis.port=6379
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java設(shè)計(jì)模式之工廠模式實(shí)例詳解
這篇文章主要介紹了java設(shè)計(jì)模式之工廠模式,結(jié)合具有實(shí)例形式分析了java工廠模式的概念、原理、實(shí)現(xiàn)與使用方法,需要的朋友可以參考下2017-09-09
SpringBoot?AOP統(tǒng)一處理Web請求日志的示例代碼
springboot有很多方法處理日志,例如攔截器,aop切面,service中代碼記錄等,下面這篇文章主要給大家介紹了關(guān)于SpringBoot?AOP統(tǒng)一處理Web請求日志的相關(guān)資料,需要的朋友可以參考下2023-02-02
Java Socket編程簡介_動力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了Java Socket編程簡介的相關(guān)知識,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-05-05
Spring中的@ConditionalOnProperty注解使用詳解
這篇文章主要介紹了Spring中的@ConditionalOnProperty注解使用詳解,在 spring boot 中有時(shí)候需要控制配置類是否生效,可以使用 @ConditionalOnProperty 注解來控制 @Configuration 是否生效,需要的朋友可以參考下2024-01-01
使用AbstractRoutingDataSource實(shí)現(xiàn)數(shù)據(jù)源動態(tài)切換的實(shí)例
AbstractRoutingDataSource 是 Spring 框架提供的一個(gè)抽象類,用于實(shí)現(xiàn)動態(tài)數(shù)據(jù)源路由,這個(gè)類主要用于多數(shù)據(jù)源場景,其中可以根據(jù)不同的條件動態(tài)地切換到不同的數(shù)據(jù)源,本文給大家介紹了如何使用AbstractRoutingDataSource實(shí)現(xiàn)數(shù)據(jù)源動態(tài)切換,需要的朋友可以參考下2024-03-03

