spring版本升级
这里记录spring版本升级的一些坑
一、springboot
二、springboot2.2.x --> springboot2.3.x
2.1 shrding-jdbc
这里对分库分表shrding-jdbc有影响,spring2.3.x加入了启动健康检查。需要增加配置
@Configuration
public class DataSourceHealthConfig extends DataSourceHealthContributorAutoConfiguration {
@Value("${spring.datasource.dbcp2.validation-query:select 1}")
private String defaultQuery;
public DataSourceHealthConfig(Map<String,DataSource> dataSources,ObjectProvider<DataSourcePoolMetadataProvider> metadataProviders){
super(dataSources,metadataProviders);
}
@Override
protected AbstractHealthIndicator createIndicator(DataSource source){
DataSourceHealthIndicator indicator = (DataSourceHealthIndicator)super.createIndicator(source);
if (!StringUtils.hasText(indicator.getQuery())) {
indicator.setQuery(defaultQuery);
}
return indicator;
}
}三、springboot2.3.x --> springboot2.4.x
3.1 junit
在spring2.4以前需要@RunWith注解才能在做junit测试的时候启动项目
@RunWith(SpringRunner.class)
@SpringBootTest(classes = ProjectApplication.class)在2.4以后,junit5移除了这个注解,只需要@SpringBootTest
@SpringBootTest(classes = ProjectApplication.class)