SpringBoot2.1新特新及代码变化

SpringBoot2.1.2默认线程池

SpringBoot2.1.2 中默认有两出会开启线程池

org.springframework.boot.autoconfigure.task.TaskExecutionAutoConfiguration

创建Bean org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor

 

org.springframework.boot.autoconfigure.task.TaskSchedulingAutoConfiguration

创建Bean org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler

这两个Bean都实现了org.springframework.core.task.AsyncListenableTaskExecutor和

org.springframework.scheduling.SchedulingTaskExecutor, 所以程序中不能通过这两个类型及其父类类型注入bean

 

移除SpringBoot2.0中废弃的类,方法,属性

在Springboot2.0中标记的废弃的类,方法,属性,在SpringBoot2.1中已经被移除.

 

Bean 覆盖默认被禁用

默认情况下禁用Bean覆盖以防止意外覆盖bean,可以通过属性spring.main.allow-bean-definition-overriding=true开启该功能

 

公开Actuator的“info”和“health”端点

如果spring-security模块在类路径上并没有手动配置security配置,/info和/health是公开可访问的,

 

Servlet Path配置属性改变

server.servlet.path属性变成spring.mvc.servlet.path

 

ActiveMQ Pooling改变

移除了activemq-pool并使用pooled-jms替代,pooled-jms提供了和activemq-pool相同的功能,并且符合JMS2.0的规范,maven依赖如下:

<dependency>

    <groupId>org.messaginghub</groupId>

    <artifactId>pooled-jms</artifactId>

</dependency>

 

 

HttpPutFormContentFilter被弃用

HttpPutFormContentFilter被弃用并使用FormContentFilter替代,因此属性

spring.mvc.formcontent.putfilter.enabled不再被使用,可以通过属性

spring.mvc.formcontent.filter.enabled替代

 

Spring Version POM Property

spring-boot-dependencies模块的POM中定义的<spring.version>属性变成<spring-framework.version>属性

 

json-simple模块被移除

json-simple模块的依赖管理不再提供,并且依赖该模块的JsonParser实现类被移除。

 

JpaProperties

Hibernate-specific属性已经从JpaProperties移到HibernateProperties类中,如果使用

JpaProperties.getHibernateProperties(HibernateSettings) 应该同时注入HibernateProperties和JpaProperties

 

第三方库更新

Tomcat 9

Undertow 2

Hibernate 5.3

JUnit 5.2

Micrometer 1.1

 

支持Java11

SpringBoot2.1 兼容Java8,同时也支持了Java11

 

属性配置支持DataSize类型

如果属性需要以字节或类似的方便单位表示大小,则可以使用org.springframework.util.unit.DataSize属性,例如: file.size=10M 可以转成DataSize成员属性

 

Kafka Streams自动配置

SpringBoot2.1为kafa streams提供了自动配置参考文档: https://docs.spring.io/spring-boot/docs/2.1.0.RELEASE/reference/htmlsingle/#boot-features-kafka-streams

 

JMS ConnectionFactory Caching

自动配置的ConnectionFactory默认将会使用CachingConnectionFactory缓存, 可以使用属性spring.jms.cache.enabled=false关闭,当使用池化操作时也会关闭。池化相关属性key为

spring.jms.artemis.pool.*

 

OAuth2 WebFlux Support

WebFlux模块支持Oauth2认证

 

 

OAuth2 resource server support

只要类路径上有spring-security-oauth2-resource-server模块,并且设置了JWK Set URI,Spring Boot就可以设置OAuth2资源服务器。例如:

spring.security.oauth2.resource.jwt.jwk.set-uri =

https://example.com/oauth2/default/v1/keys

 

Spring Boot 2.1中废弃的部分

 

1、setConnectTimeout(int)和setReadTimeout(int)已被弃用以支持类似的方法Duration。

2、management.endpoints.jmx.unique-names废弃,使用 spring.jmx.unique-names替代

3、@AutoConfigureMockMvc中的secure属性已被弃用,使Spring Security的@WithMockUser注解。

4、RestTemplateBuilder.basicAuthorization废弃,使用basicAuthentication替代。

5、在AbstractFilterRegistrationBean和FilterRegistrationBean中的常量

REQUEST_WRAPPER_FILTER_MAX_ORDER被

OrderedFilter.REQUEST_WRAPPER_FILTER_MAX_ORDER替代

 

配置属性变化

 

1、spring.security.oauth2.client.registration.login.*.redirect-uri-template 属性废弃,由

spring.security.oauth2.client.registration.login.*.redirect-uri 替代

  1. spring.security.oauth2.resource.jwt.jwk.set-uri 重命名为

spring.security.oauth2.resourceserver.jwt.jwk-set-uri

  1. spring.cloud.enabled属性被移除
  2. 所有的management.metrics.binders.*.enabled属性被移除有利于直接移除自动配置

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值