文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
10. Java 操作 Redis
10.1 环境准备
1. 引入依赖
<!--引入 jedis 连接依赖-->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
2.创建 jedis 对象
public static void main(String[] args) {
//1.创建 jedis 对象
Jedis jedis = new Jedis("192.168.40.4", 6379);//1.redis 服务必须关闭防火墙 2.redis 服务必须开启远程连接
jedis.select(0);//选择操作的库默认 0 号库
//2.执行相关操作
//....
//3.释放资源
jedis.close();
}
10.2 操作 key 相关 API
private Jedis jedis;
@Before
public void before(){
this.jedis = new Jedis("192.168.202.205", 7000);
}
@After
public void after(){
jedis.close();
}
//测试 key 相关
@Test
public void testKeys(){
//删除一个 key
jedis.del("name");
//删除多个 key
jedis.del("name","age");
//判断一个 key 是否存在 exits
Boolean name = jedis.exists("name");
System.out.println(name);
//设置一个 key 超时时间 expire pexpire
Long age = jedis.expire("age", 100);
System.out.println(age);
//获取一个 key 超时时间 ttl
Long age1 = jedis.ttl("newage");
System.out.println(age1);
//随机获取一个 key
String s = jedis.randomKey();
//修改 key 名称
jedis.rename("age","newage");
//查看可以对应值的类型
String name1 = jedis.type("name");
System.out.println(name1);
String maps = jedis.type("maps");
System.out.println(maps);
}
10.3 操作 String 相关 API
//测试 String 相关
@Test
public void testString(){
//set
jedis.set("name","小陈");
//get
String s = jedis.get("name");
System.out.println(s);
//mset
jedis.mset("content","好人","address","海淀区");
//mget
List<String> mget = jedis.mget("name", "content", "address");
mget.forEach(v-> System.out.println("v = " + v));
//getset
String set = jedis.getSet("name", "小明");
System.out.println(set);
//............
}
10.4 操作 List 相关 API
//测试 List 相关
@Test
public void testList(){
//lpush
jedis.lpush("names1","张三","王五","赵柳","win7");
//rpush
jedis.rpush("names1","xiaomingming");
//lrange
List<String> names1 = jedis.lrange("names1", 0, -1);
names1.forEach(name-> System.out.println("name = " + name));
//lpop rpop
String names11 = jedis.lpop("names1");
System.out.println(names11);
//llen
jedis.linsert("lists", BinaryClient.LIST_POSITION.BEFORE,"xiaohei","xiaobai");
//........
}
10.5 操作 Set 的相关 API
//测试 SET 相关
@Test
public void testSet(){
//sadd
jedis.sadd("names","zhangsan","lisi");
//smembers
jedis.smembers("names");
//sismember
jedis.sismember("names","xiaochen");
//...
}
10.6 操作 ZSet 相关 API
//测试 ZSET 相关
@Test
public void testZset(){
//zadd
jedis.zadd("names",10,"张三");
//zrange
jedis.zrange("names",0,-1);
//zcard
jedis.zcard("names");
//zrangeByScore
jedis.zrangeByScore("names","0","100",0,5);
//..
}
10.7 操作 Hash 相关 API
//测试 HASH 相关
@Test
public void testHash(){
//hset
jedis.hset("maps","name","zhangsan");
//hget
jedis.hget("maps","name");
//hgetall
jedis.hgetAll("mps");
//hkeys
jedis.hkeys("maps");
//hvals
jedis.hvals("maps");
//....
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论