diff --git a/pom.xml b/pom.xml index 795d9e6..cb61c07 100644 --- a/pom.xml +++ b/pom.xml @@ -141,6 +141,15 @@ 3.3.3 + + org.springframework.retry + spring-retry + + + org.springframework + spring-aspects + + diff --git a/src/main/java/com/hxgk/lowcode/LowcodeApplication.java b/src/main/java/com/hxgk/lowcode/LowcodeApplication.java index 5ad9319..151a02c 100644 --- a/src/main/java/com/hxgk/lowcode/LowcodeApplication.java +++ b/src/main/java/com/hxgk/lowcode/LowcodeApplication.java @@ -2,8 +2,10 @@ package com.hxgk.lowcode; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.retry.annotation.EnableRetry; @SpringBootApplication +@EnableRetry public class LowcodeApplication { public static void main(String[] args) { diff --git a/src/main/java/com/hxgk/lowcode/service/impl/HrServiceImpl.java b/src/main/java/com/hxgk/lowcode/service/impl/HrServiceImpl.java index 9fc5bb9..cb7c8b9 100644 --- a/src/main/java/com/hxgk/lowcode/service/impl/HrServiceImpl.java +++ b/src/main/java/com/hxgk/lowcode/service/impl/HrServiceImpl.java @@ -8,7 +8,12 @@ import com.hxgk.lowcode.model.entity.OrgContType; import com.hxgk.lowcode.service.HrService; import com.hxgk.lowcode.service.UserService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.RedisConnectionFailureException; +import org.springframework.data.redis.RedisSystemException; import org.springframework.data.redis.core.StringRedisTemplate; +import org.springframework.retry.annotation.Backoff; +import org.springframework.retry.annotation.Recover; +import org.springframework.retry.annotation.Retryable; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -96,6 +101,11 @@ public class HrServiceImpl implements HrService { return gGWsIdList; } //低代码穿梭框组织人员树 + @Retryable( + value = {RedisConnectionFailureException.class, RedisSystemException.class}, + maxAttempts = 3, + backoff = @Backoff(delay = 100, multiplier = 2) + ) @Override public Tree getOrgAndManTree() {