Spring Boot 2.7 版本发布说明

Spring Boot 2.7 Release Notes(版本发布说明),关注的几个更新。

  1. 自动配置注册的加载从 spring.factories 迁移到 AutoConfiguration下的imports
  2. Spring MVC 的 requestMappingHandlerMapping Bean 不再默认为主,存在多个时注入,需要指定或注入集合。
  3. 引入了新的 @AutoConfiguration 注解,作用在 AutoConfiguration.imports文件中列出的自动配置类。
  4. 增加了一些测试相关的注解、注解属性、注解属性源。如,@SpringBootTest,@DataCouchbaseTest,@DataElasticsearchTest。
  5. 增加支持 Redis Sentinel 进行身份验证的用户名,spring.redis.sentinel.username

从Spring Boot 2.6升级

@SpringBootTest 属性源优先级

由 @SpringBootTest 使用 properties 属性或 @TestPropertySource 注解添加的测试属性源的优先级高于通过命令行参加添加的属性源(CommandLinePropertySource)。

@SpringBootTest 不太可能同时使用具有相同属性名的属性和参数,如果存在,则需要做出改变。

新的 Flyway 模块

Spring Boot 2.7 将 Flyway 从 8.0 升级到了 8.5 版本,Flyway 对多个数据库的支持已被提取到新模块中:

  • flyway-firebird (Firebird)
  • flyway-mysql (MariaDB and MySQL)
  • flyway-sqlserver (SQL Server)

如果使用 Flyway 管理上述数据库之一的 schema,请在相应的新模块上添加依赖项。

H2 2.1

Spring Boot 2.7 已升级到 H2 2.1.120。H2 2.x向后不兼容,修复了许多安全漏洞。有关更改的详细信息以及如何处理升级,请参阅《H2变更日志和迁移指南》。

jOOQ

没有与 Java8 和 H2 2.x 兼容的开源版本的jOOQ。如果您使用的是 Java 11,请考虑使用 jooq.version 属性升级到 jOOQ 3.16 或更高版本。

如果您使用的是Java 8并且无法升级,请考虑购买jOOQ 专业版,从H2迁移到另一个数据库,或者作为最后手段,降级到H2 1.4.x。

Microsoft SQL Server JDBC Drive 10

Spring Boot 2.7 已将 MSSQL 驱动程序从 v9 升级到 v10。 更新的驱动程序现在默认启用加密,这可能会破坏现有应用程序。 您可以在本文的“重大更改”部分阅读有关更改的信息

推荐的建议是在您的服务器上安装受信任的证书或更新您的 JDBC 连接 URL 以包含 encrypt=false。

OkHttp 4

由于不再维护 OkHttp 3,Spring Boot 2.7 已升级到 OkHTTP 4。作为此次升级的一部分,用于控制 OkHttp 版本的属性已从 okhttp3.version 更改为 okhttp.version

OkHttp 4 旨在向后兼容 OkHttp 3。如果您的应用程序不是这种情况,或者出于其他原因希望继续使用 OkHttp 3,请在构建中配置 okttp.version 属性。

移除了 netty-tcnative 的独立依赖管理

netty-tcnative 的独立依赖管理已被移除,取而代之的是 Netty 的 bom 提供的依赖管理。

这确保了 netty-tcnative 的版本将与 Netty 默认使用的版本保持一致。 由于此更改,netty-tcnative.version 属性不能再用于覆盖 netty-tcnative 的版本。

该版本仍然可以通过提供您自己的依赖管理来覆盖,但建议它与 Netty 的默认版本保持一致。

spring.mongodb.embedded.features 配置属性已删除

Embedded Mongo 3.4 已放弃对配置 Mongo 功能的支持。

反映这一点, spring.mongodb.embedded.features 配置属性已被删除。

对于指定特性以更改用于启动 Mongo 的命令行的高级配置,应提供自定义 MongodConfig Bean。

特定于 Servlet 的 Mustache 属性

不推荐使用以下特定于 Servlet 的 Mustache (JavaScript模板引擎)相关属性:

  • spring.mustache.allow-request-override
  • spring.mustache.allow-session-override
  • spring.mustache.cache
  • spring.mustache.content-type
  • spring.mustache.expose-request-attributes
  • spring.mustache.expose-session-attributes
  • spring.mustache.expose-spring-macro-helpers

引入了以下替换:

  • spring.mustache.servlet.allow-request-override
  • spring.mustache.servlet.allow-session-override
  • spring.mustache.servlet.cache
  • spring.mustache.servlet.content-type
  • spring.mustache.servlet.expose-request-attributes
  • spring.mustache.servlet.expose-session-attributes
  • spring.mustache.servlet.expose-spring-macro-helpers

自动配置的 ReactiveElasticsearchTemplate 上的默认索引选项

自动配置的 ReactiveElasticsearchTemplate 上的默认索引选项已更改,以使其与 Spring Data Elasticsearch 保持一致。

以前,默认值为 strictExpandOpenAndForbidClosed。 它们现在是 strictExpandOpenAndForbidClosedIgnoreThrottled。 要恢复旧的索引选项,请定义您自己的 reactiveElasticsearchTemplate Bean。

1
2
3
4
5
6
@Bean
ReactiveElasticsearchTemplate reactiveElasticsearchTemplate(ReactiveElasticsearchClient client, ElasticsearchConverter converter) {
ReactiveElasticsearchTemplate template = new ReactiveElasticsearchTemplate(client, converter);
template.setIndicesOptions(IndicesOptions.strictExpandOpenAndForbidClosed());
return template;
}

MongoDB 属性优先级

以前,如果 spring.data.mongodb.uri 与任何等效的单独属性(例如 spring.data.mongodb.hostspring.data.mongodb.port)一起配置,则会引发异常。

uri 属性现在优先于任何单独的属性——当 spring.data.mongodb.uri 设置时其它被忽略。 此行为与其他类似属性(例如 spring.redis.url)保持一致。

在 Maven 进程中运行应用程序

Maven 插件的 spring-boot:runspring-boot:start 目标默认在 forked 处理中运行应用程序。 可以使用插件的 fork 属性禁用此行为。 此属性现在已弃用,没有替换。

有序退出代码生成器

ExitCodeGenerators 现在根据它们的 Ordered 实现和 @Order 注释进行排序。 使用生成的第一个非零退出代码。

重命名的指标标签键

camelCase 中的度量标签键已重命名,以符合 Micrometer 使用所有小写字母和 . 分隔符的建议。 以下指标和标签键受到影响:

Metric Old Tag Key New Tag Key
application.ready.time main-application-class main.application.class
application.started.time main-application-class main.application.class
cache.* cacheManager cache.manager
http.client.requests clientName client.name

如果需要恢复以前的名称,请定义一个 MeterFilter bean,该 bean 实现了 map(Id) 方法来修改标签键。

已弃用对 Elasticsearch 的 RestHighLevelClient 的支持

Elasticsearch 已弃用其 RestHighLevelClient。 与此一致,Spring Boot 的 RestHighLevelClient 自动配置已被弃用。

在可能的情况下,应使用自动配置的低级 RestClient。 或者,考虑手动配置新客户端

R2DBC驱动程序更改

Borca 版本中,PostgreSQL 驱动程序 r2dbc-postgresql 的group ID 已从 io.r2dbc 更改为 org.postgresql

MySQL 的驱动程序 r2dbc-mysql 已被删除。 考虑使用 r2dbc-mariadb 作为替代品。

从 WebSecurityConfigurerAdapter 迁移到 SecurityFilterChain

Spring Boot 2.7 升级到已弃用 WebSecurityConfigurerAdapter 的 Spring Security 5.7。

当在没有 WebSecurityConfigurerAdapter 的情况下配置 Spring Security 并使用 Spring Boot 的切片测试(例如 @WebMvcTest)时,可能需要对应用程序进行一些更改,以通过 @Import 设置您的安全配置类来使您的 SecurityFilterChain bean 可用于您的测试。 有关详细信息,请参阅参考文档

使用 Maven Shade 插件和 Gradle Shadow 插件构建Jars

Spring Boot 2.7 改变了发现自动配置和管理上下文类的方式。 它们现在分别在名为 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.importsMETA-INF/spring/org.springframework.boot.actuate.autoconfigure.web.ManagementContextConfiguration.imports 的文件中声明。

Maven Shade插件的配置

如果使用 maven-shade-plugin且没有依赖 spring-boot-starter-parent,添加如 AppendingTransformer配置。

1
2
3
4
5
6
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring/org.springframework.boot.actuate.autoconfigure.web.ManagementContextConfiguration.imports</resource>
</transformer>

Gradle Shadow插件配置

添加如下配置,以附加 .imports 为后缀的文件:

1
2
3
4
tasks.withType(ShadowJar).configureEach {
append("META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports")
append("META-INF/spring/org.springframework.boot.actuate.autoconfigure.web.ManagementContextConfiguration.imports")
}

MIMEPull

org.jvnet.mimepull:mimepull 的依赖管理已被删除。

如果您声明了对 mimepull 的依赖,请在该声明中添加满足您需求的版本。

对 Hazelcast 3.0 的支持已弃用

Hazelcast 3 支持已弃用。 如果您仍需要降级到 Hazelcast 3,应将 hazelcast-client 添加到类路径以配置客户端。

Spring MVC 的 requestMappingHandlerMapping 不再是主的

从 Spring Framework 5.1 开始,Spring MVC 已经支持多个 RequestMappingHandlerMapping bean。

为了与此保持一致,Spring Boot 2.7 不再将 MVC 的主要 requestMappingHandlerMapping bean 定义为 @Primary

万一您正在注入 RequestMappingHandlerMapping,如果上下文中有多个这样的 bean,您现在需要使用 @Qualifier 来选择您希望注入的候选者。 或者,可以使用 List<RequestMappingHandlerMapping> 注入所有候选者。

Spring Boot 2.5 的弃用

在 Spring Boot 2.5 中不推荐使用的类、方法和属性已在此版本中删除。 请确保在升级之前没有调用过时的方法。

新的和值得注意的

小提示:检查配置更改日志以获取配置更改的完整概述。

新的 Spring GraphQL starter

Spring Boot 2.7 通过新的 spring-boot-starter-graphql 启动器支持 Spring GraphQL 项目。 您可以在 Spring Boot 参考文档的 GraphQL 部分找到更多信息。

支持RabbitStreamTemplate

如果使用 spring.rabbitmq.stream.name 属性设置 stream 名称,则会自动配置 RabbitStreamTemplate

提供了一个 RabbitStreamTemplateConfigurer,类似于 RabbitTemplateConfigurer 来自定义其他实例,同时保留自动配置。

Hazelcast @SpringAware支持

自动配置的 Hazelcast 嵌入式服务器现在默认使用 SpringManagerContext。 这使得将 Spring 管理的 bean 注入到 Hazelcast 实例化的对象中成为可能。

还引入了 HazelcastConfigCustomizer 回调接口,可用于进一步调整 Hazelcast 服务器配置。

Info 端点中的操作系统信息

一个 OsInfoContributor可以暴露一些关于程序运行的操作系统信息

1
2
3
4
5
6
7
{
"os": {
"name": "Linux",
"version": "5.4.0-1051-gke",
"arch": "amd64"
}
}

默认情况下禁用此功能。 可以使用 management.info.os.enabled 属性启用它。

Info 端点中的 Java 供应商信息

现有的 JavaInfoContributor 已得到改进,为供应商信息提供了一个专门的部分,包括供应商特定的版本。 现在,它不再是顶级供应商简单属性,而是具有名称和版本属性的专用对象:

1
2
3
4
5
6
7
8
{
"java": {
"vendor": {
"name": "Eclipse Adoptium",
"version": "Temurin-17.0.1+12"
},
"..."
}

请注意,并非所有供应商都公开 java.vendor.version 系统属性,因此版本属性可能为空。

在 RSocket 处理程序方法中访问经过认证的主体

1
2
3
4
@MessageMapping ("test") 
Mono<String> hello (@Authenticated Principal p){
return Mono.just ("Hello, " + p.getName()) ;
}

无 OIDC SDK 的OpaqueTokenIntrospection

您在 OAuth2 资源服务器中使用OpaqueTokenIntrospection,自动配置的Introspection不再需要对 com.nimbusds:oauth2-oidc-sdk 的依赖。 根据 SDK 的其他用途,您可能能够从应用程序中删除依赖项。

@DataCouchbaseTest

引入了一个新的 @DataCouchbaseTest 注释,用于测试使用 Spring Data Couchbase 的应用程序。 有关详细信息,请参阅更新的参考文档

@DataElasticsearchTest

引入了一个新的 @DataElasticsearchTest 注释,用于测试使用 Spring Data Elasticsearch 的应用程序。 有关详细信息,请参阅更新的参考文档

SAML2 Logout的自动配置

如果您使用 Spring Security 的 SAML2 支持,您可以通过配置属性配置 RP 发起或 AP 发起的注销。 有关详细信息,请参阅更新的参考文档

自动配置修改

自动配置注册

如果您已经创建了自己的自动配置,您应该将注册从 org.springframework.boot.autoconfigure.EnableAutoConfiguration key 下的 spring.factories 移动到名为 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports的文件中。

每行包含一个自动配置类的完全限定名称,而不是一个逗号分隔的列表。 有关示例,请参阅包含的自动配置

spring-boot/spring-boot-project/spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports

1
2
3
4
5
org.springframework.boot.autoconfigure.admin.SpringApplicationAdminJmxAutoConfiguration
org.springframework.boot.autoconfigure.aop.AopAutoConfiguration
org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration
org.springframework.boot.autoconfigure.batch.BatchAutoConfiguration
org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration

为了向后兼容,spring.factories 中的条目仍将受到尊重。

新的 @AutoConfiguration 注解

引入了新的 @AutoConfiguration 注解。 它应该用于注释新 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 文件中列出的顶级自动配置类,替换 @Configuration

嵌套在 @AutoConfiguration 类中或由 @AutoConfiguration 类导入的配置类应该像以前一样继续使用 @Configuration

为方便起见,@AutoConfiguration 还支持通过 after、afterNames、beforebeforeNames 属性进行自动配置排序。 这可以用作@AutoConfigureAfter@AutoConfigureBefore 的替代品。

测试切片配置

如果您已经创建了自己的测试切片,您应该将注册从 spring.factories 移动到 META-INF/spring/<name of your test slice annotation>.imports 下的新位置。 格式与“自动配置注册”部分中描述的新文件相同,见上文。

有关示例,请参见包含的测试切片

故障分析器注入

FailureAnalyzer 实现现在可以通过提供一个将这些值中的一个或两个作为参数的构造方法来访问当前应用程序上下文的 BeanFactoryEnvironment

通过实现 BeanFactoryAware 来注入 BeanFactory 和通过在 FailureAnalyzer 中实现 EnvironmentAware 来注入环境的支持已被弃用,并将在未来的版本中删除。

Redis Sentinel 用户名支持

使用 spring.redis.sentinel.username 属性添加了对指定用于向 Sentinel 进行身份验证的用户名的支持。

覆盖内置清理

SanitizingFunction bean 现在按顺序调用,一旦函数更改了 SanitizableData 的值,就会停止。

如果没有 SanitizingFunction bean 清理值,则执行内置的基于键的清理。 函数通过它们的 @Order 注解或它们的 Ordered 实现来排序。

Docker 镜像构建

Podman Support

Maven 和 Gradle 插件现在支持在使用 Cloud Native Buildpacks 构建映像时使用 Podman 容器引擎作为 Docker 引擎的替代方案。

有关更多详细信息,请参阅更新的 Gradle 和 Maven 参考文档。

Cache2k Support

添加了 Cache2k 的依赖项管理和自动配置。 可以通过定义 Cache2k Builder Customizer bean 来自定义默认缓存设置。

Jackson Mixin 的简化注册

Jackson 的自动配置现在将扫描您的应用程序的包以查找带有 @JsonMixin 注解的类。 找到的任何类都会自动注册为使用自动配置的 ObjectMapper 的 mixin。

使用 PEM 编码证书的 Web 服务器 SSL 配置

嵌入式 Web 服务器可以配置为使用带有 PEM 编码证书和私钥文件的 SSL,使用属性 server.ssl.certificateserver.ssl.certificate-private-key,以及可选的 server.ssl.trust-certificateserver.ssl.trust-certificate-private-key。 可以使用类似的 management.server.ssl.* 属性来保护管理端点。 有关示例,请参阅文档。 这是作为使用 Java KeyStore 文件配置 SSL 的替代方法提供的。

依赖升级版本

Spring Boot 2.7 升级了几个 Spring 项目的新版本:

许多第三方依赖项也已更新,其中一些更值得注意的是:

各种小调整和改进

除了上面列出的更改之外,还有许多小的调整和改进,包括:

  • Kafka idlePartitionEventInterval 可使用 spring.kafka.listener.idle-partition-event-interval 属性配置。

  • KafkaTemplate transactionIdPrefix 可使用 spring.kafka.template.transaction-id-prefix 属性配置。

  • Netty maxKeepAliveRequests 可使用 server.netty.max-keep-alive-requests 属性配置。

  • @DataJdbcTest 注解会自动扫描 AbstractJdbcConfiguration beans。

  • 当使用 SAML 2.0 登录时,不再自动配置UserDetailsService bean。

  • Spring Batch 的事务隔离级别可使用 spring.batch.jdbc.isolation-level-for-create属性配置。

  • 用于记录 Spring MVC 指标的过滤器现在可以通过自定义的FilterRegistrationBean<WebMvcMetricsFilter>bean来代替。

  • DatabaseDriver.MARIADB的 ID 已从 mysql 改为 mariadb

  • spring-boot-loader中的 RandomAccessDataFile返回的 InputStream现在实现了 available()

  • Spring Kafka 的immediateStop 可以使用 spring.kafka.listener.immediate-stop 属性配置。

  • 一个新的属性, spring.mustache.reactive.media-types, 可以用于配置响应式 Mustache 视图支持的 media types

  • 当类路径下存在elasticsearch-rest-client时,现在会自动配置 RestClientBuilderRestClient beans。

    如果类路径下存在一个 elasticsearch-rest-high-level-clientRestHighLevelClient bean 仍将像以前一样自动配置, 但请注意,对RestHighLevelClient的支持现在已被弃用。

Spring Boot 2.7 中的弃用

  • 不推荐从 spring.factories 加载自动配置。 有关更多详细信息,请参见上文。

  • DatabaseDriver.GAE

  • spring.security.saml2.relyingparty.registration.{id}.identityprovider 下的属性已移至 spring.security.saml2.relyingparty.registration.{id}.assertingparty。 使用旧的属性名称会导致启动时出现 WARN 级别的日志消息。

配置变更日志

2.6 到 2.7 版本的配置属性变更。

2.7.0 过期的

Key Replacement Reason
spring.mustache.allow-request-override spring.mustache.servlet.allow-request-override
spring.mustache.allow-session-override spring.mustache.servlet.allow-session-override
spring.mustache.cache spring.mustache.servlet.cache
spring.mustache.content-type spring.mustache.servlet.content-type
spring.mustache.expose-request-attributes spring.mustache.servlet.expose-request-attributes
spring.mustache.expose-session-attributes spring.mustache.servlet.expose-session-attributes
spring.mustache.expose-spring-macro-helpers spring.mustache.servlet.expose-spring-macro-helpers

2.7.0 新增的

Key Default value Description
management.info.os.enabled false Whether to enable Operating System info.
management.metrics.export.dynatrace.v2.use-dynatrace-summary-instruments true Whether to fall back to the built-in micrometer instruments for Timer and DistributionSummary.
management.metrics.graphql.autotime.enabled true
management.metrics.graphql.autotime.percentiles
management.metrics.graphql.autotime.percentiles-histogram false
management.server.ssl.certificate
management.server.ssl.certificate-private-key
management.server.ssl.trust-certificate
management.server.ssl.trust-certificate-private-key
server.netty.max-keep-alive-requests Maximum number of requests that can be made per connection.
server.ssl.certificate Path to a PEM-encoded SSL certificate file.
server.ssl.certificate-private-key Path to a PEM-encoded private key file for the SSL certificate.
server.ssl.trust-certificate Path to a PEM-encoded SSL certificate authority file.
server.ssl.trust-certificate-private-key Path to a PEM-encoded private key file for the SSL certificate authority.
spring.batch.jdbc.isolation-level-for-create Transaction isolation level to use when creating job meta-data for new jobs.
spring.flyway.placeholder-separator : Separator of default placeholders.
spring.graphql.cors.allow-credentials Whether credentials are supported.
spring.graphql.cors.allowed-headers Comma-separated list of HTTP headers to allow in a request. ‘*’ allows all headers.
spring.graphql.cors.allowed-methods Comma-separated list of HTTP methods to allow. ‘*’ allows all methods.
spring.graphql.cors.allowed-origin-patterns Comma-separated list of origin patterns to allow.
spring.graphql.cors.allowed-origins Comma-separated list of origins to allow with ‘*’ allowing all origins.
spring.graphql.cors.exposed-headers Comma-separated list of headers to include in a response.
spring.graphql.cors.max-age 1800s How long the response from a pre-flight request can be cached by clients.
spring.graphql.graphiql.enabled false Whether the default GraphiQL UI is enabled.
spring.graphql.graphiql.path /graphiql Path to the GraphiQL UI endpoint.
spring.graphql.path /graphql Path at which to expose a GraphQL request HTTP endpoint.
spring.graphql.rsocket.mapping Mapping of the RSocket message handler.
spring.graphql.schema.file-extensions .graphqls,.gqls File extensions for GraphQL schema files.
spring.graphql.schema.introspection.enabled true Whether field introspection should be enabled at the schema level.
spring.graphql.schema.locations classpath:graphql/**/ Locations of GraphQL schema files.
spring.graphql.schema.printer.enabled false Whether the endpoint that prints the schema is enabled.
spring.graphql.websocket.connection-init-timeout 60s Time within which the initial {@code CONNECTION_INIT} type message must be received.
spring.graphql.websocket.path Path of the GraphQL WebSocket subscription endpoint.
spring.kafka.listener.idle-partition-event-interval Time between publishing idle partition consumer events (no data received for partition).
spring.kafka.listener.immediate-stop false Whether the container stops after the current record is processed or after all the records from the previous poll are processed.
spring.kafka.retry.topic.attempts 3 Total number of processing attempts made before sending the message to the DLT.
spring.kafka.retry.topic.delay 1s Canonical backoff period.
spring.kafka.retry.topic.enabled false Whether to enable topic-based non-blocking retries.
spring.kafka.retry.topic.max-delay 0 Maximum wait between retries.
spring.kafka.retry.topic.multiplier 0 Multiplier to use for generating the next backoff delay.
spring.kafka.retry.topic.random-back-off false Whether to have the backoff delays.
spring.kafka.template.transaction-id-prefix Transaction id prefix, override the transaction id prefix in the producer factory.
spring.mustache.reactive.media-types text/html;charset=UTF-8 Media types supported by Mustache views.
spring.mustache.servlet.allow-request-override false Whether HttpServletRequest attributes are allowed to override (hide) controller generated model attributes of the same name.
spring.mustache.servlet.allow-session-override false Whether HttpSession attributes are allowed to override (hide) controller generated model attributes of the same name.
spring.mustache.servlet.cache false Whether to enable template caching.
spring.mustache.servlet.content-type Content-Type value.
spring.mustache.servlet.expose-request-attributes false Whether all request attributes should be added to the model prior to merging with the template.
spring.mustache.servlet.expose-session-attributes false Whether all HttpSession attributes should be added to the model prior to merging with the template.
spring.mustache.servlet.expose-spring-macro-helpers true Whether to expose a RequestContext for use by Spring’s macro library, under the name “springMacroRequestContext”.
spring.rabbitmq.stream.name Name of the stream.
spring.redis.sentinel.username Login username for authenticating with sentinel(s).
spring.rsocket.server.ssl.certificate
spring.rsocket.server.ssl.certificate-private-key
spring.rsocket.server.ssl.trust-certificate
spring.rsocket.server.ssl.trust-certificate-private-key
spring.security.oauth2.resourceserver.jwt.audiences Identifies the recipients that the JWT is intended for.

2.7.0 移除的

Key Replacement Reason
spring.artemis.host spring.artemis.broker-url
spring.artemis.port spring.artemis.broker-url
spring.batch.initialize-schema spring.batch.jdbc.initialize-schema
spring.batch.schema spring.batch.jdbc.schema
spring.batch.table-prefix spring.batch.jdbc.table-prefix
spring.datasource.continue-on-error spring.sql.init.continue-on-error
spring.datasource.data spring.sql.init.data-locations
spring.datasource.data-password spring.sql.init.password
spring.datasource.data-username spring.sql.init.username
spring.datasource.initialization-mode spring.sql.init.mode
spring.datasource.platform spring.sql.init.platform
spring.datasource.schema spring.sql.init.schema-locations
spring.datasource.schema-password spring.sql.init.password
spring.datasource.schema-username spring.sql.init.username
spring.datasource.separator spring.sql.init.separator
spring.datasource.sql-script-encoding spring.sql.init.encoding
spring.flyway.check-location spring.flyway.fail-on-missing-locations
spring.mongodb.embedded.features Feature support has been removed from Embedded Mongo.

官方文档

  1. Spring Boot 2.7 Release Notes
作者

光星

发布于

2022-08-04

更新于

2022-08-14

许可协议

评论