redisson分布式锁的基础使用

1、配置redis连接

springboot 2.2.x以上版本只需配置redis无需另外配置redisson

2、使用方式

java 复制代码
import cn.hutool.extra.spring.SpringUtil;

import java.util.concurrent.TimeUnit;

public class LockUtil {

    private final static RedissonClient redisson = SpringUtil.getBean(RedissonClient.client.class);

    public static void redissonLock(String key, Runnable runnable) throws Exception {
        // 引入redis分布式锁
        RLock lock = redisson.getLock(key);
        try {
            // 尝试获取锁,最多等待 10 秒,锁自动过期时间为 5 秒
            boolean isLocked = lock.tryLock(10, 5, TimeUnit.SECONDS);
            if (isLocked) {
                // todo 执行业务操作
                runnable.run();
            } else {
                // todo 未获取到锁时的处理
            }
        } finally {
            // 释放锁
            if (lock.isHeldByCurrentThread()) {
                lock.unlock();
            }
        }
    }
}
     
   

3、 使用要点

  1. 根据需求配置等待时间
  2. 处理未获取到锁的情况
  3. 执行操作过后需要采用finally去解锁
相关推荐
Spider Cat 蜘蛛猫9 小时前
Springboot SSO系统设计文档
java·spring boot·后端
zyk_computer10 小时前
AI 时代,或许 Rust 比 Python 更合适
人工智能·后端·python·ai·rust·ai编程·vibe coding
雨辰AI10 小时前
SpringBoot3 项目国产化改造完整流程|从 MySQL 到人大金仓落地
java·数据库·后端·mysql·政务
GreenTea12 小时前
【Rust 2026教程:从零构建 Mini-OLAP 引擎】第 6 章 Benchmark 与优化路线图
后端
Rust语言中文社区12 小时前
【Rust日报】2026-05-14 Pyrefly v1.0 正式发布:快速的 Python 类型检查器和语言服务器
开发语言·后端·python·rust
GreenTea12 小时前
【Rust 2026教程:从零构建 Mini-OLAP 引擎】第 5 章 SQL → 逻辑计划 → 物理计划
后端
GreenTea12 小时前
【Rust 2026教程:从零构建 Mini-OLAP 引擎】第 4 章 哈希聚合:GROUP BY 的核心
后端
IT_陈寒12 小时前
Vue的v-for为什么不加key也能工作?我差点翻车
前端·人工智能·后端
GreenTea12 小时前
【Rust 2026教程:从零构建 Mini-OLAP 引擎】第 3 章 表达式系统:把 SQL 表达式变成可执行树
后端
GreenTea12 小时前
【Rust 2026教程:从零构建 Mini-OLAP 引擎】第 2 章 向量化执行:让 CPU 跑满
后端