update 升级 springboot 2.7.2 重构使用最新自动配置方式

2.X
疯狂的狮子li 3 years ago
parent 52826f9081
commit 03e1d25afb

@ -17,9 +17,9 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-boot.version>2.6.9</spring-boot.version>
<spring-boot.version>2.7.2</spring-boot.version>
<spring-cloud.version>2021.0.3</spring-cloud.version>
<spring-boot-admin.version>2.6.7</spring-boot-admin.version>
<spring-boot-admin.version>2.7.2</spring-boot-admin.version>
<spring-boot.mybatis>2.2.2</spring-boot.mybatis>
<mybatis.version>3.5.10</mybatis.version>
<swagger.core.version>1.5.22</swagger.core.version>

@ -1,6 +1,6 @@
package com.ruoyi.common.core.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
/**
@ -8,7 +8,7 @@ import org.springframework.context.annotation.EnableAspectJAutoProxy;
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
// 表示通过aop框架暴露该代理对象,AopContext能够访问
@EnableAspectJAutoProxy(exposeProxy = true)
public class ApplicationConfig {

@ -6,8 +6,8 @@ import com.ruoyi.common.core.utils.SpringUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.concurrent.BasicThreadFactory;
import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.AsyncConfigurerSupport;
import org.springframework.scheduling.annotation.EnableAsync;
@ -21,7 +21,7 @@ import java.util.concurrent.*;
*/
@Slf4j
@EnableAsync
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
public class AsyncConfig extends AsyncConfigurerSupport {
private static final int CORE_POOL_SIZE = 10;

@ -6,7 +6,7 @@ import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import com.ruoyi.common.core.jackson.BigNumberSerializer;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
import org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration;
import org.springframework.context.annotation.Bean;
@ -23,7 +23,7 @@ import java.util.TimeZone;
* @author Lion Li
*/
@Slf4j
@AutoConfigureBefore(JacksonAutoConfiguration.class)
@AutoConfiguration(before = JacksonAutoConfiguration.class)
public class JacksonConfig {
@Bean

@ -2,9 +2,9 @@ package com.ruoyi.common.core.config;
import org.hibernate.validator.HibernateValidator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.MessageSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.validation.beanvalidation.LocalValidatorFactoryBean;
import javax.validation.Validator;
@ -15,7 +15,7 @@ import java.util.Properties;
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
public class ValidatorConfig {
@Autowired

@ -1,8 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.core.utils.SpringUtils,\
com.ruoyi.common.core.config.ApplicationConfig,\
com.ruoyi.common.core.config.JacksonConfig,\
com.ruoyi.common.core.config.ValidatorConfig,\
com.ruoyi.common.core.config.AsyncConfig

@ -0,0 +1,5 @@
com.ruoyi.common.core.utils.SpringUtils
com.ruoyi.common.core.config.ApplicationConfig
com.ruoyi.common.core.config.JacksonConfig
com.ruoyi.common.core.config.ValidatorConfig
com.ruoyi.common.core.config.AsyncConfig

@ -1,2 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.dict.service.impl.DictServiceImpl

@ -1,2 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.dubbo.properties.DubboCustomProperties

@ -1 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=

@ -2,17 +2,15 @@ package com.ruoyi.common.idempotent.config;
import com.ruoyi.common.idempotent.aspectj.RepeatSubmitAspect;
import com.ruoyi.common.redis.config.RedisConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
*
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfigureAfter(RedisConfiguration.class)
@AutoConfiguration(after = RedisConfiguration.class)
public class IdempotentAutoConfiguration {
@Bean

@ -1,2 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.idempotent.config.IdempotentAutoConfiguration

@ -4,10 +4,10 @@ import com.ruoyi.common.job.config.properties.XxlJobProperties;
import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* xxl-job config
@ -15,7 +15,7 @@ import org.springframework.context.annotation.Configuration;
* @author Lion Li
*/
@Slf4j
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
@EnableConfigurationProperties(XxlJobProperties.class)
@AllArgsConstructor
@ConditionalOnProperty(prefix = "xxl.job", name = "enabled", havingValue = "true")

@ -1,2 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.job.config.XxlJobConfig

@ -1,4 +1,2 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.loadbalance.config.CustomLoadBalanceAutoConfiguration
org.springframework.boot.env.EnvironmentPostProcessor=\
com.ruoyi.common.loadbalance.config.CustomEnvironmentPostProcessor

@ -15,7 +15,7 @@ import org.aspectj.lang.annotation.AfterReturning;
import org.aspectj.lang.annotation.AfterThrowing;
import org.aspectj.lang.annotation.Aspect;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.http.HttpMethod;
import org.springframework.validation.BindingResult;
import org.springframework.web.multipart.MultipartFile;
@ -32,7 +32,7 @@ import java.util.Map;
*/
@Slf4j
@Aspect
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
public class LogAspect {
@Autowired

@ -1,3 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.log.service.AsyncLogService,\
com.ruoyi.common.log.aspect.LogAspect

@ -0,0 +1,2 @@
com.ruoyi.common.log.service.AsyncLogService
com.ruoyi.common.log.aspect.LogAspect

@ -2,6 +2,7 @@ package com.ruoyi.common.mail.config;
import cn.hutool.extra.mail.MailAccount;
import com.ruoyi.common.mail.config.properties.MailProperties;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
@ -11,6 +12,7 @@ import org.springframework.context.annotation.Bean;
*
* @author Michelle.Chung
*/
@AutoConfiguration
@ConditionalOnProperty(value = "mail.enabled", havingValue = "true")
@EnableConfigurationProperties(MailProperties.class)
public class MailConfiguration {

@ -1,2 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.mail.config.MailConfiguration

@ -10,8 +10,8 @@ import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerIntercept
import com.ruoyi.common.mybatis.handler.CreateAndUpdateMetaObjectHandler;
import com.ruoyi.common.mybatis.interceptor.PlusDataPermissionInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.transaction.annotation.EnableTransactionManagement;
@ -20,8 +20,8 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
*
* @author Lion Li
*/
@AutoConfiguration
@EnableTransactionManagement(proxyTargetClass = true)
@Configuration(proxyBeanMethods = false)
@MapperScan("${mybatis-plus.mapperPackage}")
public class MybatisPlusConfiguration {

@ -1,3 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.mybatis.config.MybatisPlusConfiguration,\
com.ruoyi.common.mybatis.service.SysDataScopeService

@ -0,0 +1,2 @@
com.ruoyi.common.mybatis.config.MybatisPlusConfiguration
com.ruoyi.common.mybatis.service.SysDataScopeService

@ -1 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=

@ -11,6 +11,7 @@ import org.redisson.spring.cache.CacheConfig;
import org.redisson.spring.cache.RedissonSpringCacheManager;
import org.redisson.spring.starter.RedissonAutoConfigurationCustomizer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.CachingConfigurerSupport;
@ -27,6 +28,7 @@ import java.util.Map;
* @author Lion Li
*/
@Slf4j
@AutoConfiguration
@EnableCaching
@EnableConfigurationProperties(RedissonProperties.class)
public class RedisConfiguration extends CachingConfigurerSupport {

@ -1,4 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.redis.config.RedisConfiguration

@ -2,15 +2,15 @@ package com.ruoyi.common.satoken.config;
import cn.dev33.satoken.jwt.StpLogicJwtForSimple;
import cn.dev33.satoken.stp.StpLogic;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* Sa-Token
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
public class SaTokenConfiguration {
@Bean

@ -1,4 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.satoken.core.dao.PlusSaTokenDao,\
com.ruoyi.common.satoken.core.service.SaPermissionImpl,\
com.ruoyi.common.satoken.config.SaTokenConfiguration

@ -0,0 +1,3 @@
com.ruoyi.common.satoken.core.dao.PlusSaTokenDao
com.ruoyi.common.satoken.core.service.SaPermissionImpl
com.ruoyi.common.satoken.config.SaTokenConfiguration

@ -1 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=

@ -5,8 +5,8 @@ import cn.dev33.satoken.id.SaIdUtil;
import cn.dev33.satoken.interceptor.SaAnnotationInterceptor;
import cn.dev33.satoken.util.SaResult;
import com.ruoyi.common.core.constant.HttpStatus;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@ -15,7 +15,7 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
public class SecurityConfiguration implements WebMvcConfigurer {
/**

@ -1,3 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.security.handler.GlobalExceptionHandler,\
com.ruoyi.common.security.config.SecurityConfiguration

@ -0,0 +1,2 @@
com.ruoyi.common.security.handler.GlobalExceptionHandler
com.ruoyi.common.security.config.SecurityConfiguration

@ -4,6 +4,7 @@ import com.ruoyi.common.sms.config.properties.SmsProperties;
import com.ruoyi.common.sms.core.AliyunSmsTemplate;
import com.ruoyi.common.sms.core.SmsTemplate;
import com.ruoyi.common.sms.core.TencentSmsTemplate;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
@ -16,7 +17,7 @@ import org.springframework.context.annotation.Configuration;
* @author Lion Li
* @version 4.2.0
*/
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
@EnableConfigurationProperties(SmsProperties.class)
public class SmsAutoConfiguration {

@ -1,2 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.sms.config.SmsAutoConfiguration

@ -7,6 +7,7 @@ import com.ruoyi.common.swagger.config.properties.SwaggerProperties;
import io.swagger.models.auth.In;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
@ -30,7 +31,7 @@ import java.util.function.Predicate;
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
@EnableKnife4j
@EnableConfigurationProperties(SwaggerProperties.class)
@ConditionalOnProperty(name = "swagger.enabled", matchIfMissing = true)

@ -1,3 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.swagger.config.SwaggerAutoConfiguration,\
com.ruoyi.common.swagger.config.SwaggerBeanPostProcessor

@ -0,0 +1,2 @@
com.ruoyi.common.swagger.config.SwaggerAutoConfiguration
com.ruoyi.common.swagger.config.SwaggerBeanPostProcessor

@ -1,10 +1,9 @@
package com.ruoyi.common.web.config;
import com.ruoyi.common.web.core.I18nLocaleResolver;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.LocaleResolver;
/**
@ -12,8 +11,7 @@ import org.springframework.web.servlet.LocaleResolver;
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfigureBefore(WebMvcAutoConfiguration.class)
@AutoConfiguration(before = WebMvcAutoConfiguration.class)
public class I18nConfig {
@Bean

@ -7,25 +7,24 @@ import com.alibaba.cloud.nacos.discovery.NacosDiscoveryAutoConfiguration;
import com.alibaba.cloud.nacos.discovery.NacosDiscoveryClientConfiguration;
import com.alibaba.cloud.nacos.discovery.NacosWatch;
import com.ruoyi.common.web.nacos.CustomNacosWatch;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.cloud.client.ConditionalOnBlockingDiscoveryEnabled;
import org.springframework.cloud.client.ConditionalOnDiscoveryEnabled;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* nacos Undertow
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfiguration(
before = NacosDiscoveryClientConfiguration.class,
after = NacosDiscoveryAutoConfiguration.class
)
@ConditionalOnDiscoveryEnabled
@ConditionalOnBlockingDiscoveryEnabled
@ConditionalOnNacosDiscoveryEnabled
@AutoConfigureBefore(NacosDiscoveryClientConfiguration.class)
@AutoConfigureAfter(NacosDiscoveryAutoConfiguration.class)
public class NacosConfig {
@Bean

@ -2,16 +2,16 @@ package com.ruoyi.common.web.config;
import io.undertow.server.DefaultByteBufferPool;
import io.undertow.websockets.jsr.WebSocketDeploymentInfo;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.web.embedded.undertow.UndertowServletWebServerFactory;
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
import org.springframework.context.annotation.Configuration;
/**
* Undertow
*
* @author Lion Li
*/
@Configuration(proxyBeanMethods = false)
@AutoConfiguration
public class UndertowConfig implements WebServerFactoryCustomizer<UndertowServletWebServerFactory> {
/**

@ -1,4 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.ruoyi.common.web.config.I18nConfig,\
com.ruoyi.common.web.config.UndertowConfig,\
com.ruoyi.common.web.config.NacosConfig

@ -0,0 +1,3 @@
com.ruoyi.common.web.config.I18nConfig
com.ruoyi.common.web.config.UndertowConfig
com.ruoyi.common.web.config.NacosConfig
Loading…
Cancel
Save