Jedis的基本操作
2020-12-21 本文已影响0人
攻城老狮
Jedis基本使用
- 本机连接虚拟机的Redis服务
- 修改redis的conf配置文件,使得redis可以被本地之外的机器访问

- 关闭centos系统的防火墙
systemctl status firewalld.service # 查看防火墙状态
systemctl stop firewalld.service # 关闭防火墙
- 新建maven项目引入相关测试依赖
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.8.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.56</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
- 编写测试文件,测试是否可以与redis正常交互
//基础功能测试
@Test
public void testRedis(){
Jedis jedis = new Jedis("192.168.44.142", 6379);
System.out.println(jedis.ping());
System.out.println(jedis.set("name", "yorick"));
System.out.println(jedis.set("age", "23"));
System.out.println(jedis.get("name"));
System.out.println(jedis.exists("name"));
System.out.println(jedis.del("name"));
System.out.println(jedis.keys("*"));
System.out.println(jedis.flushDB());
System.out.println(jedis.keys("*"));
jedis.close();
}
- 编写事务,测试是否可以正确执行事务操作
//事务测试
@Test
public void testMulti(){
//构造json数据
JSONObject jsonObject = new JSONObject();
jsonObject.put("name","yorick");
jsonObject.put("age",23);
String result = jsonObject.toJSONString();
//连接redis
Jedis jedis = new Jedis("192.168.44.142", 6379);
//清空数据库
jedis.flushDB();
//开启事务
Transaction multi = jedis.multi();
try {
//设置值
multi.set("user",result);
//出错回滚
//int i = 1/0;
//提交事务
multi.exec();
}catch (Exception e){
//放弃事务
multi.discard();
e.printStackTrace();
}finally {
//获取值
System.out.println(jedis.get("user"));
jedis.close();
}
}