Maven :
<dependencies>
<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.5</version>
</dependency>
</dependencies>
package com.trans;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.Transaction;
/**
* 事务测试类
*/
public class RedisTransTest {
public static void main(String[] args) {
String key = "leavePK-20190221";
// 不用事务
String nextPk = noTrans(key);
// 使用事务
String nextpk = transOption(key);
}
/**
* 不用事务操作
*/
public static String noTrans(String key) {
Jedis jedis = null;
try{
jedis = new Jedis("192.168.93.42",6380);
String value1 = jedis.rpop(key);
System.out.println(value1);
return value1;
}catch (Exception e){
e.printStackTrace();
}finally {
jedis.close();
}
return null;
}
/**
* 事务操作
*/
public static String transOption(String key) {
Jedis jedis = null;
try{
jedis = new Jedis("192.168.93.42",6380);
// 开启事务
Transaction multi = jedis.multi();
// 执行操作
String value1 = jedis.rpop(key);
// 提交操作
multi.exec();
// 放弃本次操作
// multi.discard();
return value1;
}catch (Exception e){
}finally {
jedis.close();
}
return null;
}
}