package cn.hope.jedis.utils;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
/**
* @author newcityman
* @date 2019/9/20 - 0:33
* JedisPool工具類
* 加載配置文件,配置連接池的連接池
* 提供獲取連接的方法
*/
public class JedisPoolUtils {
private static JedisPool jedisPool;
static {
//讀取配置文件
InputStream is = JedisPoolUtils.class.getClassLoader().getResourceAsStream("jedis.properties");
//創建Properties對象
Properties prop = new Properties();
try {
prop.load(is);
} catch (IOException e) {
e.printStackTrace();
}
//獲取數據,設置到JedisPoolConfig()中
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxIdle(Integer.parseInt( prop.getProperty("maxTotal")));
config.setMaxTotal(Integer.parseInt(prop.getProperty("maxIdle")));
jedisPool=new JedisPool(config,prop.getProperty("host"),Integer.parseInt(prop.getProperty("port")));
}
/**
* 獲取連接方法
* @return
*/
public static Jedis getJedis(){
return jedisPool.getResource();
}
}
package cn.hope.jedis.test;
import cn.hope.jedis.utils.JedisPoolUtils;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* Jedis測試類
* @author newcityman
* @date 2019/9/19 - 22:36
*/
public class JedisTest {
@Test
public void test1(){
//1、創建連接
Jedis jedis = new Jedis("localhost", 6379);
//2、操作
jedis.set("city","nanjing");
//3、關閉連接
jedis.close();
}
/**
* String數據結構操作
*/
@Test
public void test2(){
//1、創建連接
Jedis jedis = new Jedis();//不寫參數時,默認是主機是localhost,端口是6379
//2、操作
jedis.set("city","nanjing");
String city = jedis.get("city");
System.out.println(city);
jedis.setex("activecode",20,"159637");
String activecode = jedis.get("activecode");
System.out.println(activecode);
//3、關閉連接
jedis.close();
}
/**
* Hset數據結構操作
*/
@Test
public void test3(){
//1、創建連接
Jedis jedis = new Jedis();
//2、操作
//存儲hash
jedis.hset("myhash","hashid","123");
jedis.hset("myhash","hashname","pickpag");
jedis.hset("myhash","hashage","12");
//獲取hash
String hget = jedis.hget("myhash", "hashname");
System.out.println(hget);
//獲取hash中說有map值
Map<String, String> map = jedis.hgetAll("myhash");
Set<String> strings = map.keySet();
for (String string : strings) {
System.out.println(string+":"+map.get(string));
}
//3、關閉連接
jedis.close();
}
/**
* list數據結構操作
*/
@Test
public void test4(){
//1、創建連接
Jedis jedis = new Jedis();
//2、操作
//存儲list
jedis.lpush("mylist","a" ,"b","c");
jedis.rpush("mylist","a" ,"b","c");
//獲取list 范圍獲取
List<String> mylist = jedis.lrange("mylist", 0, -1);
System.out.println(mylist);
//list 彈出
String lpop = jedis.lpop("mylist");
String rpop = jedis.rpop("mylist");
System.out.println(lpop);
System.out.println(rpop);
//獲取list 范圍獲取
List<String> mylist2 = jedis.lrange("mylist", 0, -1);
System.out.println(mylist2);
//3、關閉連接
jedis.close();
}
/**
* set數據結構操作
*/
@Test
public void