顺序

如果在service上有@Transactional和@lock4j,则执行顺序如下

  1. 上锁
  2. 开启事务
  3. 执行逻辑
  4. 提交/回滚事务
  5. 释放锁

异常问题记录 | 后端通用异常

用开源大家多数人实践过的,自己造轮子就容易踩坑了

参数

@Lock4j注解属性 说明
name 需要锁住的key名称
executor 可以通过该参数设置自定义特定的执行器
keys 需要锁住的keys名称,可以是多个
expire 锁过期时间,主要是用来防止死锁
acquireTimeout 可以理解为排队等待时长,超过这个时长就退出排队,并排除获取锁超时异常
autoRelease 是否自动释放锁,默认是true