Jedis操作五種不同的類型的數據


 
        
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 test5(){
//1、創建連接
Jedis jedis = new Jedis();
//2、操作
//存儲set
jedis.sadd("myset","java","c++","delphi");

//獲取
Set<String> myset = jedis.smembers("myset");
System.out.println(myset);

//3、關閉連接
jedis.close();
}

/**
* sortedSet數據結構操作
*/
@Test
public void test6(){
//1、創建連接
Jedis jedis = new Jedis();
//2、操作
//存儲sortedSet
jedis.zadd("mysortedSet",50,"哪吒");
jedis.zadd("mysortedSet",70,"西游記");
jedis.zadd("mysortedSet",40,"紅樓夢");

//獲取
Set<String> mysortedSet = jedis.zrange("mysortedSet", 0, -1);
System.out.println(mysortedSet);

//3、關閉連接
jedis.close();
}

/**
* Jedis連接池使用
*/
@Test
public void test7(){
//1、創建連接池配置對象
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(50);
config.setMaxIdle(10);

//2、創建連接池
JedisPool jedisPool = new JedisPool(config, "localhost", 6379);
//3.通過連接池獲取連接
Jedis jedis = jedisPool.getResource();
//4、使用
jedis.set("hhhhh","wwwww");
//5、關閉,歸還到連接池中
jedis.close();
}

/**
* 通過連接池工具類連接
*/
@Test
public void test8(){
//1、獲得連接
Jedis jedis = JedisPoolUtils.getJedis();
//2、操作
jedis.set("jedispoolutils","jedispoolutils");
String jedispoolutils = jedis.get("jedispoolutils");
System.out.println(jedispoolutils);
//3、關閉
jedis.close();
}


}
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM