基于JAVA的redis使用(Jedis-API)
2018-11-23 本文已影响3人
张艺
使用工具intellij-idea创建一个maven工程
在pom.xml
中配置依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.6.2</version>
</dependency>
创建客户端
// 创建一个redis连接(也可以创建池)
Jedis jedis = new Jedis("127.0.0.1", 6379);
字符串操作
// 写入一个字符串;
jedis.set("key1", "string-value1");
String value1 = jedis.get("key1");
// 打印string-value1
System.out.println(value1);
// key不存在则返回 null
System.out.println(jedis.get("anyKey"));
hash操作,写入一个hashMap
// 写入一个hash
HashMap<String, String> hashMap = new HashMap<String, String>();
hashMap.put("name", "zhang-");
hashMap.put("age", "36");
jedis.hmset("user", hashMap);
获取按map中的key来获取数据,得到一个list
List<String> hmget = jedis.hmget("user", "name", "age");
System.out.println(hmget);
判断hashMap中是否存在某个字段
Boolean isExist = jedis.hexists("user", "name");
删除某个字段
jedis.hdel("user", "name");
获取整个hashMap
Map<String, String> map = jedis.hgetAll("user");
写入一个list(列表)
// 在头部写入数据,列表数据是 [name2, name1]
jedis.lpush("user", "name1", "name2");
// 在尾部写入数据,列表数据是[name1, name2]
jedis.rpush("user", "name1", "name2");
// 按索引来获取数据
jedis.lindex("key", 1);
// 获取列表的长度
long length = jedis.llen("user2");
无序set操作
// 创建一个set
jedis.sadd("set1", "value1");
jedis.sadd("set1", "value2");
jedis.sadd("set1", "value3");
// 获取整个set
Set<String> set1 = jedis.smembers("set1");
// 移出某个value
jedis.srem("set1", "value2");
// 判断是否存在该value
boolean sismember = jedis.sismember("set1", "value2");
有序set操作
// 有序set
jedis.zadd("set2", 1, "value1");
jedis.zadd("set2", 10, "value10");
jedis.zadd("set2", 11, "value11");
jedis.zadd("set2", 9, "value9");
jedis.zadd("set2", 5, "value5");
// 获取set的长度
Long set21 = jedis.zcard("set2");
System.out.println(set21);
// 获取set的片段
Set<String> set2 = jedis.zrange("set2", 0, 10);
System.out.println(set2);