事务
jedis实现事务。
代码语言:javascript复制@Test
public void testTX() throws JsonProcessingException {
Jedis jedis = new Jedis("192.168.106.129", 6666);
//如果没有密码,就可以省略下面步骤。
jedis.auth("cxy0809.");
HashMap<String, Object> userMap = new HashMap<>();
userMap.put("name", "cuixiaoyan");
userMap.put("age", "18");
ObjectMapper objectMapper = new ObjectMapper();
String userList = objectMapper.writeValueAsString(userMap);
//开启事务
Transaction multi = jedis.multi();
try {
multi.set("user1", userList);
multi.set("user2", userList);
//代码抛出移除,执行失败。
//int i = 1 / 0;
multi.exec();//执行事务。
} catch (Exception e) {
multi.discard(); //放弃事务。
e.printStackTrace();
} finally {
System.out.println(jedis.get("user1"));
System.out.println(jedis.get("user2"));
jedis.close();//关闭连接。
}
}