1、引入依赖
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson</artifactId>
<version>3.13.6</version>
</dependency>
32.配置Redisson客户端
@Configuration
public class RedisConfig {
@Bean
public RedissonClient redissonClient(){
//配制类
Config config=new Config();
//添加Redis地址, 除了单节点地址还可以用config.useClusterServers()添加集群地址
config.useSingleServer().setAddress("redis://填虚拟机网址:6379").setPassword("密码");
//创建客户端
return Redisson.create(config);
}
}
3.使用Redisson的分布式锁
@Resource
private RedissonClient redissonclient;
@Test
public void testRedisson()throws InterruptedException{
//获取锁(可重入),指定锁名称
RLock lock=redissonclient.getLock("anylock");
//尝试获取锁,参数分别为:获取锁的最大等待时间(期间会重试),锁自动释放时间,时间单位
boolean islock=lock.tryLock(1,10, TimeUnit.SECONDS);
//判断释放锁获取成功
if (islock) {
try{
System.out.println("执行业务");
}finally{
//释放锁
lock.unlock();
}
}
}