diff --git a/zlt-commons/zlt-common-core/src/main/java/com/central/common/lock/DistributedLock.java b/zlt-commons/zlt-common-core/src/main/java/com/central/common/lock/DistributedLock.java index db86968e70b84a3146558eadf308a4a70c8aca91..6bdbefcd7fc58bd232f296c17cafceea45dc4142 100644 --- a/zlt-commons/zlt-common-core/src/main/java/com/central/common/lock/DistributedLock.java +++ b/zlt-commons/zlt-common-core/src/main/java/com/central/common/lock/DistributedLock.java @@ -65,6 +65,8 @@ public interface DistributedLock { * @param zLock 锁抽象对象 */ default void unlock(ZLock zLock) throws Exception { - this.unlock(zLock.getLock()); + if (zLock != null) { + this.unlock(zLock.getLock()); + } } } diff --git a/zlt-commons/zlt-common-core/src/main/java/com/central/common/lock/LockAspect.java b/zlt-commons/zlt-common-core/src/main/java/com/central/common/lock/LockAspect.java index f25d5f15090405782b844430861146e3a5b8fde0..f160e335d42e9e536501a7eb2b4c831f7ee67f55 100644 --- a/zlt-commons/zlt-common-core/src/main/java/com/central/common/lock/LockAspect.java +++ b/zlt-commons/zlt-common-core/src/main/java/com/central/common/lock/LockAspect.java @@ -40,7 +40,6 @@ public class LockAspect { @Around("@within(lock) || @annotation(lock)") public Object aroundLock(ProceedingJoinPoint point, Lock lock) throws Throwable { - Object lockObj = null; if (lock == null) { // 获取类上的注解 lock = point.getTarget().getClass().getDeclaredAnnotation(Lock.class); @@ -59,6 +58,7 @@ public class LockAspect { Object[] args = point.getArgs(); lockKey = getValBySpEL(lockKey, methodSignature, args); } + ZLock lockObj = null; try { //加锁 if (lock.waitTime() > 0) {