diff --git a/servers/boe-server-all/pom.xml b/servers/boe-server-all/pom.xml index e0406c88..8e84c962 100644 --- a/servers/boe-server-all/pom.xml +++ b/servers/boe-server-all/pom.xml @@ -228,7 +228,11 @@ elasticsearch-rest-client 7.9.0 - + + org.springframework.retry + spring-retry + 1.3.1 + diff --git a/servers/boe-server-all/src/main/java/com/xboe/BoeServerAllApplication.java b/servers/boe-server-all/src/main/java/com/xboe/BoeServerAllApplication.java index 80bbd148..5dfeacda 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/BoeServerAllApplication.java +++ b/servers/boe-server-all/src/main/java/com/xboe/BoeServerAllApplication.java @@ -4,6 +4,8 @@ import java.io.File; import java.io.IOException; import javax.annotation.PostConstruct; + +import org.springframework.retry.annotation.EnableRetry; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -15,6 +17,7 @@ import org.springframework.context.annotation.Configuration; @SpringBootApplication @EnableCaching @EnableAsync +@EnableRetry public class BoeServerAllApplication { public static void main(String[] args) { diff --git a/servers/boe-server-all/src/main/java/com/xboe/data/service/impl/DataUserSyncServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/data/service/impl/DataUserSyncServiceImpl.java index 0b3c6200..27fc62f6 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/data/service/impl/DataUserSyncServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/data/service/impl/DataUserSyncServiceImpl.java @@ -6,6 +6,8 @@ import javax.transaction.Transactional; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.retry.annotation.Recover; +import org.springframework.retry.annotation.Retryable; import org.springframework.stereotype.Service; import com.xboe.account.dao.AccountDao; @@ -40,7 +42,8 @@ public class DataUserSyncServiceImpl implements IDataUserSyncService{ @Override @Transactional - public synchronized void syncUserFull(UserData user) { + @Retryable + public void syncUserFull(UserData user) { log.info("同步用户【"+user.getId()+","+user.getCode()+"】"); //如果删除状态为空,则设置为不删除 if(user.getDeleted()==null) { @@ -154,4 +157,10 @@ public class DataUserSyncServiceImpl implements IDataUserSyncService{ } + + @Recover + private void recover() { + System.out.println("重试3次都失败-----recover-------------recover-------------"); + } + }