Jedis
Jedis: 一款java操作redis数据库的工具.
* Jedis操作各种redis中的数据结构
1) 字符串类型 string
set
get
2) 哈希类型 hash : map格式
hset
hget
hgetAll
3) 列表类型 list : linkedlist格式。支持重复元素
lpush / rpush
lpop / rpop
lrange start end : 范围获取
4) 集合类型 set : 不允许重复元素
sadd
smembers:获取所有元素
5) 有序集合类型 sortedset:不允许重复元素,且元素有顺序
zadd
zrange
JedisTest
import com.code_g.util.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;
public class TestJedis {
//简单使用jedis
@Test
public void testJedis1(){
Jedis jedis = new Jedis("localhost",6379);
jedis.set("username","zhangsan");
//关闭连接
jedis.close();
}
//操作String
@Test
public void testJedis2(){
Jedis jedis = new Jedis();//默认localhost:6379
jedis.set("password","123456");
String password = jedis.get("password");
System.out.println(password);
//存储键值对,10秒后自动删除
jedis.setex("activecode",10,"dasc");
jedis.close();
}
//操作hash数据结构
@Test
public void testJedis3(){
Jedis jedis = new Jedis();//默认localhost:6379
jedis.hset("user","name","code_g");
jedis.hset("user","age","18");
jedis.hset("user","gender","male");
//获得name值
String name = jedis.hget("user", "name");
System.out.println(name);
//获得所有键值对
Map<String, String> user = jedis.hgetAll("user");
Set<String> keySet = user.keySet();
for (String s : keySet) {
String value = user.get(s);
System.out.println(s + " : " + value);
}
jedis.close();
}
//操作list
@Test
public void testJedis4(){
Jedis jedis = new Jedis();
jedis.lpush("charlist","a","b","c");
jedis.rpush("charlist","a","b","c");
String s = jedis.lpop("charlist");
System.out.println(s);
String s1 = jedis.rpop("charlist");
System.out.println(s1);
List<String> charlist = jedis.lrange("charlist", 0, -1);
System.out.println(charlist);
jedis.close();
}
//操作set
@Test
public void testJedis5(){
Jedis jedis = new Jedis();
jedis.sadd("myset","java","python","javascript");
Set<String> myset = jedis.smembers("myset");
System.out.println(myset);
jedis.close();
}
//操作sortedset
@Test
public void testJedis6(){
Jedis jedis = new Jedis();
jedis.zadd("mysortedset",3,"go");
jedis.zadd("mysortedset",50,"php");
jedis.zadd("mysortedset",70,"c++");
Set<String> mysortedset = jedis.zrange("mysortedset", 0, -1);
System.out.println(mysortedset);
jedis.close();
}
//jedis连接池
@Test
public void testJedis7() {
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
jedisPoolConfig.setMaxTotal(50);
jedisPoolConfig.setMaxIdle(10);
JedisPool jedisPool = new JedisPool(jedisPoolConfig,"localhost",6379);
Jedis jedis = jedisPool.getResource();
jedis.set("gender","female");
jedis.close();
}