1、准备工作引入坐标
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson</artifactId>
<version>3.17.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<exclusions>
<exclusion>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
2.在配置文件中配置redis
spring:
redis:
host: localhost
port: 6379
2.1来个简单的例子
@ResponseBody
@GetMapping("/hello")
public String getHello() {
//使用redisson进行加锁 只要名称相同就是同一把锁
RLock lock = redissonClient.getLock("my-lock");
// lock.lock();//阻塞式等待 如果业务没有执行完看门狗会给自动续期 默认30释放锁
lock.lock(30, TimeUnit.SECONDS);//用这个 要设计解锁时间要大于业务的执行时间 否则这个业务没有执行完下一个进来你会把别人的锁给删掉 在锁时间到了 不会进行自动续期
try {
Sys