#并发#
一、引入jar
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson</artifactId>
<version>2.2.13</version>
</dependency>
二、简单使用,先加锁后执行业务逻辑吗,最后释放锁
@Resource
private RedissonClient redissonClient;
//业务代码
public Users getApiUsers(Users users) {
//加锁
RLock lock = redissonClient.getLock(users.getUserName());
lock.lock();
try {
//业务逻辑
//先查询该用户是否存在
Users user=userService.findByUserName(users.getUserName);
if(Objects.isNull(user)){
//不存在,插入
return xx;
}
//存在,直接返回user
return user;
}catch (Exception e){
e.printStackTrace();
return null;
}finally {
//释放锁
lock.unlock();
}
}