From 77232905dacbc4ac6cf81958522ed13ed0679c9d Mon Sep 17 00:00:00 2001 From: liaozan <378024053@qq.com> Date: Thu, 13 Jul 2023 22:47:00 +0800 Subject: [PATCH] Replace Spring' StringUtils with Commons-lang3 StringUtils --- .../com/schbrain/common/util/ExcelUtils.java | 5 ++- .../com/schbrain/common/util/PortUtils.java | 4 +- .../com/schbrain/common/util/SpelUtils.java | 7 +++- .../schbrain/common/enums/BooleanEnum.java | 11 ++---- .../web/exception/GlobalExceptionHandler.java | 9 +++-- .../web/servlet/RequestLoggingFilter.java | 8 ++-- .../support/concurrent/RateLimitAspect.java | 39 ++++++------------- .../web/support/concurrent/RateLimiter.java | 8 +--- .../common/web/utils/ServletUtils.java | 5 ++- pom.xml | 2 +- ...onInitializerEnvironmentPostProcessor.java | 10 ++--- .../redis/RedisCacheConfiguration.java | 5 +-- starters/dubbo-spring-boot-starter/pom.xml | 6 +-- .../dubbo/filter/DubboExceptionFilter.java | 7 ++-- .../elasticsearch-spring-boot-starter/pom.xml | 2 +- .../LoggerConfigurationInitializer.java | 6 +-- .../apollo/DynamicLoggerConfiguration.java | 7 ++-- .../LoggingLevelChangeListener.java | 4 +- .../LoggerConfigLoadedEventListener.java | 6 +-- .../autoconfigure/oss/util/OssUtils.java | 6 +-- 20 files changed, 68 insertions(+), 89 deletions(-) rename starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/{listener => }/LoggingLevelChangeListener.java (97%) diff --git a/commons/common-util/src/main/java/com/schbrain/common/util/ExcelUtils.java b/commons/common-util/src/main/java/com/schbrain/common/util/ExcelUtils.java index 2e11315..4ea1563 100644 --- a/commons/common-util/src/main/java/com/schbrain/common/util/ExcelUtils.java +++ b/commons/common-util/src/main/java/com/schbrain/common/util/ExcelUtils.java @@ -1,5 +1,6 @@ package com.schbrain.common.util; +import cn.hutool.poi.excel.ExcelUtil; import com.alibaba.excel.EasyExcel; import com.schbrain.common.util.support.excel.bean.ExcelReadResult; import com.schbrain.common.util.support.excel.exception.ExcelException; @@ -21,7 +22,7 @@ import java.util.Map; * @author liaozan * @since 2022/1/6 */ -public class ExcelUtils { +public class ExcelUtils extends ExcelUtil { // file public static ExcelReadResult> read(File excelFile) { @@ -132,4 +133,4 @@ public class ExcelUtils { return readListener.getReadResult(); } -} \ No newline at end of file +} diff --git a/commons/common-util/src/main/java/com/schbrain/common/util/PortUtils.java b/commons/common-util/src/main/java/com/schbrain/common/util/PortUtils.java index e22ec12..6fc4dfe 100644 --- a/commons/common-util/src/main/java/com/schbrain/common/util/PortUtils.java +++ b/commons/common-util/src/main/java/com/schbrain/common/util/PortUtils.java @@ -23,7 +23,7 @@ public class PortUtils { portTmp++; } } - throw new BaseException("no available port."); + throw new BaseException("No available port."); } public static boolean isPortUsed(int port) { @@ -32,7 +32,7 @@ public class PortUtils { try { serverSocket = new ServerSocket(port); } catch (IOException e) { - log.warn("current port[{}] is in use", port); + log.warn("Current port[{}] is in use", port); used = true; } finally { if (serverSocket != null) { diff --git a/commons/common-util/src/main/java/com/schbrain/common/util/SpelUtils.java b/commons/common-util/src/main/java/com/schbrain/common/util/SpelUtils.java index 98280f3..ba851c8 100644 --- a/commons/common-util/src/main/java/com/schbrain/common/util/SpelUtils.java +++ b/commons/common-util/src/main/java/com/schbrain/common/util/SpelUtils.java @@ -1,6 +1,8 @@ package com.schbrain.common.util; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.BeanFactory; +import org.springframework.context.expression.BeanFactoryResolver; import org.springframework.expression.EvaluationContext; import org.springframework.expression.Expression; import org.springframework.expression.ExpressionParser; @@ -16,8 +18,9 @@ public class SpelUtils { private static final ConcurrentHashMap expressionCache = new ConcurrentHashMap<>(); - public static T parse(String express, Map variables, Class valueType) { + public static T parse(String express, Map variables, Class valueType, BeanFactory beanFactory) { StandardEvaluationContext ctx = new StandardEvaluationContext(); + ctx.setBeanResolver(new BeanFactoryResolver(beanFactory)); ctx.setVariables(variables); return parse(express, ctx, valueType); } @@ -38,4 +41,4 @@ public class SpelUtils { return expression; } -} \ No newline at end of file +} diff --git a/commons/common/src/main/java/com/schbrain/common/enums/BooleanEnum.java b/commons/common/src/main/java/com/schbrain/common/enums/BooleanEnum.java index 8d345b5..9b2acd0 100644 --- a/commons/common/src/main/java/com/schbrain/common/enums/BooleanEnum.java +++ b/commons/common/src/main/java/com/schbrain/common/enums/BooleanEnum.java @@ -3,6 +3,8 @@ package com.schbrain.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; +import java.util.Objects; + /** * @author huangxi * @since 2022/08/23 @@ -23,12 +25,7 @@ public enum BooleanEnum { private final Integer value; public static boolean validate(Integer value) { - for (BooleanEnum booleanEnum : values()) { - if (booleanEnum.getValue().equals(value)) { - return true; - } - } - return false; + return Objects.equals(TRUE.value, value); } -} \ No newline at end of file +} diff --git a/commons/web-common/src/main/java/com/schbrain/common/web/exception/GlobalExceptionHandler.java b/commons/web-common/src/main/java/com/schbrain/common/web/exception/GlobalExceptionHandler.java index 2ed3129..9f3af3b 100644 --- a/commons/web-common/src/main/java/com/schbrain/common/web/exception/GlobalExceptionHandler.java +++ b/commons/web-common/src/main/java/com/schbrain/common/web/exception/GlobalExceptionHandler.java @@ -4,7 +4,6 @@ import cn.hutool.core.exceptions.ExceptionUtil; import cn.hutool.core.util.StrUtil; import com.schbrain.common.constants.ResponseActionConstants; import com.schbrain.common.exception.BaseException; -import com.schbrain.common.util.support.ValidationMessageBuilder; import com.schbrain.common.web.result.ResponseDTO; import lombok.extern.slf4j.Slf4j; import org.springframework.dao.DataAccessException; @@ -31,6 +30,8 @@ import java.util.List; import static com.schbrain.common.constants.ResponseCodeConstants.PARAM_INVALID; import static com.schbrain.common.constants.ResponseCodeConstants.SERVER_ERROR; +import static com.schbrain.common.util.support.ValidationMessageBuilder.buildBindingErrorMsg; +import static com.schbrain.common.util.support.ValidationMessageBuilder.buildConstraintViolationErrorMsg; /** * @author liaozan @@ -183,14 +184,14 @@ public class GlobalExceptionHandler { /************************************* Parameter Binding Exception Handing *************************************/ @ExceptionHandler(BindException.class) public ResponseDTO handleBindException(BindException ex) { - String errorMsg = ValidationMessageBuilder.buildBindingErrorMsg(ex.getBindingResult()); + String errorMsg = buildBindingErrorMsg(ex.getBindingResult()); log.error(errorMsg); return buildResponse(ex, PARAM_INVALID, errorMsg); } @ExceptionHandler(ConstraintViolationException.class) public ResponseDTO handleConstraintViolationException(ConstraintViolationException ex) { - String errorMsg = ValidationMessageBuilder.buildConstraintViolationErrorMsg(ex.getConstraintViolations()); + String errorMsg = buildConstraintViolationErrorMsg(ex.getConstraintViolations()); log.error(errorMsg); return buildResponse(ex, PARAM_INVALID, errorMsg); } @@ -228,4 +229,4 @@ public class GlobalExceptionHandler { log.error(exMsg, throwable); } -} \ No newline at end of file +} diff --git a/commons/web-common/src/main/java/com/schbrain/common/web/servlet/RequestLoggingFilter.java b/commons/web-common/src/main/java/com/schbrain/common/web/servlet/RequestLoggingFilter.java index 5b57256..df4e77d 100644 --- a/commons/web-common/src/main/java/com/schbrain/common/web/servlet/RequestLoggingFilter.java +++ b/commons/web-common/src/main/java/com/schbrain/common/web/servlet/RequestLoggingFilter.java @@ -3,9 +3,9 @@ package com.schbrain.common.web.servlet; import cn.hutool.core.text.CharPool; import cn.hutool.core.util.ArrayUtil; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.boot.web.servlet.filter.OrderedFilter; import org.springframework.core.Ordered; -import org.springframework.util.StringUtils; import org.springframework.web.cors.CorsUtils; import org.springframework.web.filter.OncePerRequestFilter; import org.springframework.web.util.ContentCachingRequestWrapper; @@ -61,10 +61,10 @@ public class RequestLoggingFilter extends OncePerRequestFilter implements Ordere String body = getRequestBody(request); StringBuilder builder = new StringBuilder(); builder.append("requestUri: ").append(method).append(CharPool.SPACE).append(requestUri); - if (StringUtils.hasText(queryString)) { + if (StringUtils.isNotBlank(queryString)) { builder.append(", queryString: ").append(queryString); } - if (StringUtils.hasText(body)) { + if (StringUtils.isNotBlank(body)) { builder.append(", body: ").append(body); } builder.append(", startTime: ").append(startTime); @@ -91,4 +91,4 @@ public class RequestLoggingFilter extends OncePerRequestFilter implements Ordere } } -} \ No newline at end of file +} diff --git a/commons/web-common/src/main/java/com/schbrain/common/web/support/concurrent/RateLimitAspect.java b/commons/web-common/src/main/java/com/schbrain/common/web/support/concurrent/RateLimitAspect.java index 8c088f4..3089a56 100644 --- a/commons/web-common/src/main/java/com/schbrain/common/web/support/concurrent/RateLimitAspect.java +++ b/commons/web-common/src/main/java/com/schbrain/common/web/support/concurrent/RateLimitAspect.java @@ -1,30 +1,29 @@ package com.schbrain.common.web.support.concurrent; -import cn.hutool.extra.spring.SpringUtil; import com.schbrain.common.exception.BaseException; import com.schbrain.common.util.ApplicationName; -import com.schbrain.common.util.ParameterDiscoverUtils; import com.schbrain.common.util.SpelUtils; -import com.schbrain.common.web.utils.ServletUtils; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.MapUtils; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.aspectj.lang.reflect.Advice; import org.aspectj.lang.reflect.MethodSignature; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.BeanFactory; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.BoundValueOperations; import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.util.CollectionUtils; -import java.util.HashMap; import java.util.Map; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; +import static com.schbrain.common.util.ParameterDiscoverUtils.getMethodArgsMap; + /** * @author liaozan * @see com.schbrain.common.web.support.concurrent.RateLimiter @@ -39,11 +38,12 @@ public class RateLimitAspect { private final Map, RateLimitCacheKeyVariablesContributor> contributorMap = new ConcurrentHashMap<>(); private final String keyPrefix; - + private final BeanFactory beanFactory; private final StringRedisTemplate stringRedisTemplate; - public RateLimitAspect(StringRedisTemplate stringRedisTemplate) { + public RateLimitAspect(StringRedisTemplate stringRedisTemplate, BeanFactory beanFactory) { this.keyPrefix = ApplicationName.get(); + this.beanFactory = beanFactory; this.stringRedisTemplate = stringRedisTemplate; } @@ -56,7 +56,7 @@ public class RateLimitAspect { protected void doRateLimit(RateLimiter rateLimiter, JoinPoint joinPoint, MethodSignature signature) { Map variables = prepareVariables(rateLimiter, joinPoint, signature); - String cacheKey = SpelUtils.parse(rateLimiter.cacheKey(), variables, String.class); + String cacheKey = SpelUtils.parse(rateLimiter.cacheKey(), variables, String.class, beanFactory); if (cacheKey == null) { throw new BaseException("cacheKey should not be null"); } @@ -67,7 +67,7 @@ public class RateLimitAspect { try { long accessCount = Optional.ofNullable(rateLimitOps.increment()).orElse(1L); if (accessCount > rateLimiter.permits()) { - throw new BaseException("访问频次太快,请稍后再试。"); + throw new BaseException("The access frequency is too fast, please try again later"); } if (accessCount <= 1) { @@ -81,27 +81,12 @@ public class RateLimitAspect { } } - protected Map createEvaluationVariables(MethodSignature methodSignature, Object[] args) { - Map variables = new HashMap<>(); - Map methodArgsMap = ParameterDiscoverUtils.getMethodArgsMap(methodSignature.getMethod(), args); - if (!CollectionUtils.isEmpty(methodArgsMap)) { - variables.putAll(methodArgsMap); - } - - variables.put("request", ServletUtils.getRequest()); - variables.put("response", ServletUtils.getResponse()); - variables.put("applicationContext", SpringUtil.getApplicationContext()); - variables.put("beanFactory", SpringUtil.getBeanFactory()); - variables.put("args", args); - return variables; - } - protected String formatCacheKey(String cacheKey) { return "rateLimit:" + keyPrefix + ":" + cacheKey; } private Map prepareVariables(RateLimiter rateLimiter, JoinPoint joinPoint, MethodSignature signature) { - Map variables = createEvaluationVariables(signature, joinPoint.getArgs()); + Map variables = getMethodArgsMap(signature.getMethod(), joinPoint.getArgs()); Class contributorClass = rateLimiter.contributor(); if (contributorClass == null || contributorClass == NoOpRateLimitCacheKeyVariablesContributor.class) { return variables; @@ -113,10 +98,10 @@ public class RateLimitAspect { contributorMap.put(contributorClass, contributor); } Map contributeVariables = contributor.contribute(rateLimiter, joinPoint, signature); - if (!CollectionUtils.isEmpty(contributeVariables)) { + if (MapUtils.isNotEmpty(contributeVariables)) { variables.putAll(contributeVariables); } return variables; } -} \ No newline at end of file +} diff --git a/commons/web-common/src/main/java/com/schbrain/common/web/support/concurrent/RateLimiter.java b/commons/web-common/src/main/java/com/schbrain/common/web/support/concurrent/RateLimiter.java index 8308c79..64b0067 100644 --- a/commons/web-common/src/main/java/com/schbrain/common/web/support/concurrent/RateLimiter.java +++ b/commons/web-common/src/main/java/com/schbrain/common/web/support/concurrent/RateLimiter.java @@ -1,7 +1,5 @@ package com.schbrain.common.web.support.concurrent; -import org.aspectj.lang.reflect.MethodSignature; - import java.lang.annotation.*; import java.util.concurrent.TimeUnit; @@ -30,9 +28,7 @@ public @interface RateLimiter { int permits() default 3; /** - * 缓存的 key,使用 spel 进行解析 - *

- * 可用的变量 {@link RateLimitAspect#createEvaluationVariables(MethodSignature, Object[])} + * 缓存的 key,使用 spring el 进行解析 */ String cacheKey(); @@ -41,4 +37,4 @@ public @interface RateLimiter { */ Class contributor() default NoOpRateLimitCacheKeyVariablesContributor.class; -} \ No newline at end of file +} diff --git a/commons/web-common/src/main/java/com/schbrain/common/web/utils/ServletUtils.java b/commons/web-common/src/main/java/com/schbrain/common/web/utils/ServletUtils.java index d3397a6..e46610f 100644 --- a/commons/web-common/src/main/java/com/schbrain/common/web/utils/ServletUtils.java +++ b/commons/web-common/src/main/java/com/schbrain/common/web/utils/ServletUtils.java @@ -1,5 +1,6 @@ package com.schbrain.common.web.utils; +import cn.hutool.extra.servlet.ServletUtil; import com.schbrain.common.exception.BaseException; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -12,7 +13,7 @@ import javax.servlet.http.HttpServletResponse; * @author liaozan * @since 2022/1/6 */ -public class ServletUtils { +public class ServletUtils extends ServletUtil { public static HttpServletRequest getRequest() { ServletRequestAttributes requestAttributes = getRequestAttributes(); @@ -35,4 +36,4 @@ public class ServletUtils { return (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); } -} \ No newline at end of file +} diff --git a/pom.xml b/pom.xml index 2f7e433..879340d 100644 --- a/pom.xml +++ b/pom.xml @@ -752,4 +752,4 @@ - \ No newline at end of file + diff --git a/starters/apollo-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/apollo/ApolloConfigurationInitializerEnvironmentPostProcessor.java b/starters/apollo-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/apollo/ApolloConfigurationInitializerEnvironmentPostProcessor.java index 58c8e29..0bca0c2 100644 --- a/starters/apollo-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/apollo/ApolloConfigurationInitializerEnvironmentPostProcessor.java +++ b/starters/apollo-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/apollo/ApolloConfigurationInitializerEnvironmentPostProcessor.java @@ -5,12 +5,12 @@ import com.schbrain.common.util.ApplicationName; import com.schbrain.common.util.EnvUtils; import com.schbrain.framework.support.spring.LoggerAwareEnvironmentPostProcessor; import com.schbrain.framework.support.spring.defaults.DefaultPropertiesEnvironmentPostProcessor; +import org.apache.commons.lang3.StringUtils; import org.springframework.boot.ConfigurableBootstrapContext; import org.springframework.boot.SpringApplication; import org.springframework.boot.logging.DeferredLogFactory; import org.springframework.core.Ordered; import org.springframework.core.env.ConfigurableEnvironment; -import org.springframework.util.StringUtils; import java.util.LinkedHashMap; import java.util.Map; @@ -109,21 +109,21 @@ public class ApolloConfigurationInitializerEnvironmentPostProcessor extends Logg // {env}.meta String searchKey = fallbackKey; String apolloUrl = environment.getProperty(searchKey); - if (StringUtils.hasText(apolloUrl)) { + if (StringUtils.isNotBlank(apolloUrl)) { return apolloUrl; } // apollo.meta.{env} searchKey = APOLLO_META_KEY + "." + env; apolloUrl = environment.getProperty(searchKey); - if (StringUtils.hasText(apolloUrl)) { + if (StringUtils.isNotBlank(apolloUrl)) { return apolloUrl; } // apollo.meta searchKey = APOLLO_META_KEY; apolloUrl = environment.getProperty(searchKey); - if (StringUtils.hasText(apolloUrl)) { + if (StringUtils.isNotBlank(apolloUrl)) { return apolloUrl; } @@ -154,4 +154,4 @@ public class ApolloConfigurationInitializerEnvironmentPostProcessor extends Logg } } -} \ No newline at end of file +} diff --git a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/redis/RedisCacheConfiguration.java b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/redis/RedisCacheConfiguration.java index dba1bb4..b00d4f1 100644 --- a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/redis/RedisCacheConfiguration.java +++ b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/redis/RedisCacheConfiguration.java @@ -1,6 +1,5 @@ package com.schbrain.framework.autoconfigure.cache.provider.redis; -import com.schbrain.framework.autoconfigure.cache.provider.CacheProvider; import org.springframework.beans.factory.ObjectProvider; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; @@ -23,9 +22,9 @@ public class RedisCacheConfiguration { @Bean @ConditionalOnBean(RedisConnectionFactory.class) @ConditionalOnMissingBean(RedisCacheProvider.class) - public CacheProvider redisCacheProvider(RedisConnectionFactory redisConnectionFactory, ObjectProvider redisTemplate) { + public RedisCacheProvider redisCacheProvider(RedisConnectionFactory redisConnectionFactory, ObjectProvider redisTemplate) { StringRedisTemplate stringRedisTemplate = redisTemplate.getIfAvailable(() -> new StringRedisTemplate(redisConnectionFactory)); return new RedisCacheProvider(stringRedisTemplate); } -} \ No newline at end of file +} diff --git a/starters/dubbo-spring-boot-starter/pom.xml b/starters/dubbo-spring-boot-starter/pom.xml index 64ac0bb..cf65bd0 100644 --- a/starters/dubbo-spring-boot-starter/pom.xml +++ b/starters/dubbo-spring-boot-starter/pom.xml @@ -74,14 +74,10 @@ org.apache.dubbo dubbo-serialization-hessian2 - - org.apache.dubbo - dubbo-serialization-fastjson2 - org.apache.dubbo dubbo-metadata-report-zookeeper - \ No newline at end of file + diff --git a/starters/dubbo-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/dubbo/filter/DubboExceptionFilter.java b/starters/dubbo-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/dubbo/filter/DubboExceptionFilter.java index fab9a82..40eaaf5 100644 --- a/starters/dubbo-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/dubbo/filter/DubboExceptionFilter.java +++ b/starters/dubbo-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/dubbo/filter/DubboExceptionFilter.java @@ -3,7 +3,6 @@ package com.schbrain.framework.autoconfigure.dubbo.filter; import cn.hutool.core.exceptions.ExceptionUtil; import com.schbrain.common.exception.BaseException; import com.schbrain.common.exception.ParamInvalidException; -import com.schbrain.common.util.support.ValidationMessageBuilder; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.common.constants.CommonConstants; import org.apache.dubbo.common.extension.Activate; @@ -14,6 +13,8 @@ import org.apache.dubbo.rpc.service.GenericService; import javax.validation.ConstraintViolationException; import java.util.Arrays; +import static com.schbrain.common.util.support.ValidationMessageBuilder.buildConstraintViolationErrorMsg; + /** * @author liaozan * @since 2022/1/19 @@ -47,7 +48,7 @@ public class DubboExceptionFilter extends ExceptionFilter { protected ParamInvalidException createParamInvalidException(Invocation invocation, ConstraintViolationException cause) { String serviceName = invocation.getInvoker().getInterface().getSimpleName(); String methodName = invocation.getMethodName(); - String errorMsg = ValidationMessageBuilder.buildConstraintViolationErrorMsg(cause.getConstraintViolations()); + String errorMsg = buildConstraintViolationErrorMsg(cause.getConstraintViolations()); return new ParamInvalidException(String.format("%s.%s %s", serviceName, methodName, errorMsg)); } @@ -62,4 +63,4 @@ public class DubboExceptionFilter extends ExceptionFilter { log.error("Catch rpc exception: {}, client: {}@{}, target: {}#{}, args: {}", errorMessage, remoteApplication, remoteHost, serviceName, methodName, arguments, exception); } -} \ No newline at end of file +} diff --git a/starters/elasticsearch-spring-boot-starter/pom.xml b/starters/elasticsearch-spring-boot-starter/pom.xml index 577e71b..0f10bc9 100644 --- a/starters/elasticsearch-spring-boot-starter/pom.xml +++ b/starters/elasticsearch-spring-boot-starter/pom.xml @@ -24,4 +24,4 @@ - \ No newline at end of file + diff --git a/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/LoggerConfigurationInitializer.java b/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/LoggerConfigurationInitializer.java index 61b4fd6..209bb50 100644 --- a/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/LoggerConfigurationInitializer.java +++ b/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/LoggerConfigurationInitializer.java @@ -20,11 +20,11 @@ import net.logstash.logback.appender.LogstashTcpSocketAppender; import net.logstash.logback.encoder.LogstashEncoder; import net.logstash.logback.fieldnames.ShortenedFieldNames; import org.apache.commons.collections4.IteratorUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.LoggerFactory; import org.springframework.boot.cloud.CloudPlatform; import org.springframework.core.env.ConfigurableEnvironment; import org.springframework.util.CollectionUtils; -import org.springframework.util.StringUtils; import java.nio.file.Paths; import java.util.List; @@ -86,7 +86,7 @@ public class LoggerConfigurationInitializer { } if (properties.isEnableJsonLogWriteToLogstash() || EnvUtils.runningOnCloudPlatform(environment)) { - if (!StringUtils.hasText(properties.getLogstashAddress())) { + if (StringUtils.isBlank(properties.getLogstashAddress())) { log.warn("logstash address is unset, will NOT write log to logstash"); return; } @@ -158,4 +158,4 @@ public class LoggerConfigurationInitializer { return rollingPolicy; } -} \ No newline at end of file +} diff --git a/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/DynamicLoggerConfiguration.java b/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/DynamicLoggerConfiguration.java index 41ac9e4..735c53f 100644 --- a/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/DynamicLoggerConfiguration.java +++ b/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/DynamicLoggerConfiguration.java @@ -2,11 +2,10 @@ package com.schbrain.framework.autoconfigure.logger.apollo; import com.ctrip.framework.apollo.Config; import com.ctrip.framework.apollo.ConfigService; -import com.schbrain.framework.autoconfigure.logger.apollo.listener.LoggingLevelChangeListener; import com.schbrain.framework.autoconfigure.logger.properties.LoggerProperties; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.boot.logging.LoggingSystem; -import org.springframework.util.StringUtils; /** * 动态日志配置 @@ -23,7 +22,7 @@ public class DynamicLoggerConfiguration { private void listenToLoggingLevelChange(LoggingSystem loggingSystem, LoggerProperties loggerProperties) { String loggerNamespace = loggerProperties.getNamespace(); - if (!StringUtils.hasText(loggerNamespace)) { + if (StringUtils.isBlank(loggerNamespace)) { log.debug("logger level reload is disabled"); return; } @@ -37,4 +36,4 @@ public class DynamicLoggerConfiguration { config.addChangeListener(new LoggingLevelChangeListener(loggingSystem)); } -} \ No newline at end of file +} diff --git a/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/listener/LoggingLevelChangeListener.java b/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/LoggingLevelChangeListener.java similarity index 97% rename from starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/listener/LoggingLevelChangeListener.java rename to starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/LoggingLevelChangeListener.java index 6e03997..9d42bbd 100644 --- a/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/listener/LoggingLevelChangeListener.java +++ b/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/apollo/LoggingLevelChangeListener.java @@ -1,4 +1,4 @@ -package com.schbrain.framework.autoconfigure.logger.apollo.listener; +package com.schbrain.framework.autoconfigure.logger.apollo; import com.ctrip.framework.apollo.ConfigChangeListener; import com.ctrip.framework.apollo.enums.PropertyChangeType; @@ -75,4 +75,4 @@ public class LoggingLevelChangeListener implements ConfigChangeListener { return configuration; } -} \ No newline at end of file +} diff --git a/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/listener/LoggerConfigLoadedEventListener.java b/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/listener/LoggerConfigLoadedEventListener.java index cf5816a..96d13c1 100644 --- a/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/listener/LoggerConfigLoadedEventListener.java +++ b/starters/logger-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/logger/listener/LoggerConfigLoadedEventListener.java @@ -12,12 +12,12 @@ import com.schbrain.framework.autoconfigure.apollo.event.ConfigLoadedEvent; import com.schbrain.framework.autoconfigure.apollo.event.listener.GenericConfigLoadedEventListener; import com.schbrain.framework.autoconfigure.logger.LoggerConfigurationInitializer; import com.schbrain.framework.autoconfigure.logger.properties.LoggerProperties; +import org.apache.commons.lang3.StringUtils; import org.springframework.boot.context.logging.LoggingApplicationListener; import org.springframework.boot.logging.LogFile; import org.springframework.boot.logging.LoggingSystem; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.core.env.ConfigurableEnvironment; -import org.springframework.util.StringUtils; import java.io.IOException; import java.nio.file.Files; @@ -71,7 +71,7 @@ public class LoggerConfigLoadedEventListener extends GenericConfigLoadedEventLis } ConfigFile loggingConfiguration = ConfigService.getConfigFile(logConfigNamespace, ConfigFileFormat.XML); String content = loggingConfiguration.getContent(); - if (!StringUtils.hasText(content)) { + if (StringUtils.isBlank(content)) { log.warn("empty logging configuration, reinitialize loggingSystem is disabled"); return; } @@ -92,4 +92,4 @@ public class LoggerConfigLoadedEventListener extends GenericConfigLoadedEventLis log.debug(String.format("%s is set to %s", CONFIG_PROPERTY, loggerConfigurationLocation)); } -} \ No newline at end of file +} diff --git a/starters/oss-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/oss/util/OssUtils.java b/starters/oss-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/oss/util/OssUtils.java index 48cff99..f463bb3 100644 --- a/starters/oss-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/oss/util/OssUtils.java +++ b/starters/oss-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/oss/util/OssUtils.java @@ -22,7 +22,7 @@ import com.schbrain.framework.autoconfigure.oss.exception.OssException; import com.schbrain.framework.autoconfigure.oss.properties.OssProperties; import com.schbrain.framework.autoconfigure.oss.properties.OssProperties.StsProperties; import lombok.extern.slf4j.Slf4j; -import org.springframework.util.StringUtils; +import org.apache.commons.lang3.StringUtils; import java.io.File; import java.io.InputStream; @@ -210,7 +210,7 @@ public class OssUtils { } public static String replaceWithDomain(String domain, String ossUrl) { - if (!StringUtils.hasText(domain)) { + if (StringUtils.isBlank(domain)) { return ossUrl; } domain = URLUtil.normalize(domain); @@ -268,7 +268,7 @@ public class OssUtils { ValidateUtils.notEmpty(bucket, "bucket can not be empty"); ValidateUtils.notEmpty(objectKeys, "objectKeys can not be empty"); String notExistKeys = objectKeys.stream().filter(key -> !exist(bucket, key)).collect(Collectors.joining(",")); - if (StringUtils.hasText(notExistKeys)) { + if (StringUtils.isNotBlank(notExistKeys)) { String errorMsg = StrFormatter.format("objectKeys:[{}] not exist", notExistKeys); return DeleteResult.fail(bucket, objectKeys, errorMsg); } -- GitLab