Jedis工具类
目錄
一、基本使用
1、xml 引入依賴
2、簡(jiǎn)單測(cè)試
二、工具類
1、編寫redis屬性文件
2、編寫工具類
3、使用測(cè)試
Jedis是Redis官方推薦的Java連接開(kāi)發(fā)工具。
一、基本使用
1、xml 引入依賴
<dependencies><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId> <!--redis的java客戶端--><version>3.4.0</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.70</version></dependency></dependencies>2、簡(jiǎn)單測(cè)試
public class RedisTest {@Testpublic void testSet(){//通過(guò)指定host、port、password創(chuàng)建Jedis對(duì)象Jedis jedis = new Jedis("127.0.0.1",6379);jedis.auth("lly123");//set操作jedis.set("test","valueTest");//get操作String v = jedis.get("test");System.out.println(v);} }二、工具類
1、編寫redis屬性文件
redis.host=127.0.0.1 redis.port=6379 redis.password=lly123 #最大連接數(shù) redis.maxTotal=20 #最大活躍數(shù) redis.maxIdle=10 #最長(zhǎng)等待時(shí)間 redis.maxWaitMillis=30002、編寫工具類
package Util;import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig;import java.io.IOException; import java.util.Properties;public class RedisUtil {private JedisPool pool = null;//單例模式private static RedisUtil instance = new RedisUtil();//私有構(gòu)造函數(shù)private RedisUtil() {if (pool == null) {//獲取redis連接屬性文件Properties properties = new Properties();try {properties.load(RedisUtil.class.getClassLoader().getResourceAsStream("redis.properties"));} catch (IOException e) {e.printStackTrace();}String ip = (String) properties.get("redis.host");int port = Integer.parseInt(properties.get("redis.port").toString()) ;String password = (String) properties.get("redis.password");JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();jedisPoolConfig.setMaxTotal(Integer.parseInt(properties.get("redis.maxTotal").toString()));jedisPoolConfig.setMaxIdle(Integer.parseInt(properties.get("redis.maxIdle").toString()));jedisPoolConfig.setMaxWaitMillis(Long.parseLong(properties.get("redis.maxWaitMillis").toString()));if (password != null && !"".equals(password)) {// redis 設(shè)置了密碼pool = new JedisPool(jedisPoolConfig, ip, port, 10000, password);} else {// redis 未設(shè)置密碼pool = new JedisPool(jedisPoolConfig, ip, port, 10000);}}}public Jedis getJedis() {return pool.getResource();}public static RedisUtil getInstance() {return instance;}}3、使用測(cè)試
public class RedisTest {private RedisUtil redisUtil = RedisUtil.getInstance();@Testpublic void testPool(){//每次從池中獲取jedis,而不是每次都去new一個(gè)Jedis jedis = redisUtil.getJedis();//存取測(cè)試jedis.set("pool_key","pool_value");String v = jedis.get("pool_key");System.out.println(v);//使用完記得關(guān)閉jedis.close();} }?
?
總結(jié)
- 上一篇: 带你根据源码了解View的事件触发流程,
- 下一篇: 【LeetCode】3月26日打卡-Da