在测试方法之前先获取Redis连接
@Before
public void getJedis() {
jedis = new Jedis("127.0.0.1", 6379);
}
Jedis操作Map
/**
* 操作Map
*/
@Test
public void operateMapRedisDemo() {
Map<String, String> map = new HashMap<String, String>();
map.put("name", "jack");
map.put("age", "23");
map.put("address", "home");
map.put("friend", "tom");
map.put("class", "1班");
//将map置入redis中
jedis.hmset("info", map);
//hmget第一个参数为map的键,后面的为map中对象的键,可添加多个
List<String> list = jedis.hmget("info", "name", "address", "class");
for (String s : list) {
System.out.print(s + " ");
}//jack home 1班
System.out.println();
jedis.hdel("info", "address");
System.out.println("删除后address为:" + jedis.hmget("info", "address"));
//删除后address为:[null]
System.out.println("共" + jedis.hlen("info") + "个元素");
//共4个元素
System.out.println("是否存在:" + jedis.exists("info"));
//是否存在:true
System.out.println("所有的键:" + jedis.hkeys("info"));
//所有的键:[class, friend, age, name]
System.out.println("所有的值:" + jedis.hvals("info"));
//所有的值:[jack, 23, tom, 1班]
Iterator<String> it = jedis.hkeys("info").iterator();
while (it.hasNext()) {
String key = it.next();
System.out.println(key + "的值是" + jedis.hmget("info", key));
}
//class的值是[1班]
//friend的值是[tom]
//age的值是[23]
///name的值是[jack]
}
Jedis操作List
/**
* 操作List
*/
@Test
public void operateListRedisDemo() {
jedis.del("myList");//清空myList的值
//lpush为在list头部插入元素,rpush为在list尾部插入元素
jedis.lpush("myList", "12", "13");
jedis.lpush("myList", "14", "15");
jedis.lpush("myList", "16", "17");
//其中0为起始位置,end=-1时为全部
System.out.println(jedis.lrange("myList", 0, -1));//[17, 16, 15, 14, 13, 12]
jedis.del("myList");//清空myList的值
jedis.rpush("myList", "12", "13");
jedis.rpush("myList", "14", "15");
jedis.rpush("myList", "16", "17");
//其中0为起始位置,end=-1时为全部
System.out.println(jedis.lrange("myList", 0, -1));//[12, 13, 14, 15, 16, 17]
jedis.del("myList");//清空myList的值
jedis.lpush("myList", "12", "27");
jedis.rpush("myList", "14", "56");
jedis.rpush("myList", "43", "22");
jedis.sort("myList");
System.out.println(jedis.lrange("myList", 0, -1));
}
Jedis操作Set
/**
* 操作Set
*/
@Test
public void operateSetRedisDemo() {
jedis.sadd("set", "10");
jedis.sadd("set", "11");
jedis.sadd("set", "12");
jedis.sadd("set", "13");
jedis.sadd("set", "14");
//显示所有元素
System.out.println(jedis.smembers("set"));//[10, 11, 12, 13, 14]
//判断第二个参数是否存在set中
System.out.println(jedis.sismember("set", "10"));//true
//随机从set中取出一个元素
System.out.println(jedis.srandmember("set"));//13
//获取set中的元素个数
System.out.println("总数为:" + jedis.scard("set"));//5
}