【Spring Boot 2.6 Release Notes】日本語訳
- はじめに
- 別バージョンの日本語訳へのリンク
- Spring Boot 2.6.0 リリースノート
- Spring Boot 2.5からの変更点
- Spring Boot 2.4からの非推奨
- 循環参照がデフォルトで禁止
- Spring MVC向けPathPatternベースのパスマッチング戦略
- アクチュエータ Env InfoContributor のデフォルト無効
- アプリケーションの起動
- Webリソースの構成
- 依存関係管理の削除
- Prometheusバージョンプロパティ
- Embedded Mongo
- Oracle Database Driver の依存関係管理
- Vault関連のFlywayプロパティ削除
- WebFlux セッションプロパティ
- Elasticsearchプロパティの統合
- @PersistentはSpring Data Couchbaseでは考慮されない
- Mavenビルド情報のデフォルト時間
- レコードと @ConfigurationProperties
- 遅延OpenID Connect検出
- 最小要件の変更
- 新規注目点
- SameSite Cookie属性サーブレットのサポート
- リアクティブサーバーセッションのプロパティ
- プラグ可能なサニタイズルール
- Javaランタイム情報
- ビルド情報プロパティの除外
- ヘルスサポート
- 複合コントリビュータサポートの包含/除外
- メトリクスのサポート
- Dockerイメージ構築のサポート
- Spring Data Enversの自動構成
- Redisコネクションプール
- spring-rabbit-streamの自動設定
- Kafka SSLプロパティでのPEM形式のサポート
- MavenプラグインのstartGoalの構成の改善
- 自動構成されたSpring Webサービスサーバーのテスト
- Bean ValidationメッセージのMessageSourceベースの補間
- Spring MVCをテストするためのWebTestClientの使用
- Spring Integration PollerMetadata プロパティ
- Log4j2の複合構成のサポート
- 依存関係のアップグレード
- その他
- Spring Boot 2.6.0 での非推奨
- Spring Boot 2.5からの変更点
はじめに
昨年に続き、今年も仕事でSpring Boot 2.6 を利用することになりましたので、Release Notesを訳してみました。
<!!注意!!>
筆者は特に英語力に自信があるわけではありません。ご利用の際は自己責任でお願いいたします。
(参考:当ブログの免責事項)
誤訳があればご指摘いただけると幸いです。本文は下記のリンクを参照しています。
以下、リリースノートの日本語訳です。
別バージョンの日本語訳へのリンク
Spring Boot 2.6.0 リリースノート
Spring Boot 2.5からの変更点
Spring Boot 2.4からの非推奨
Spring Boot 2.4で非推奨だったクラス、メソッド、プロパティは本リリースで削除されました。 アップグレードする前に、廃止されたメソッドを呼び出していないことを確認してください。
循環参照がデフォルトで禁止
Bean間の循環参照がデフォルトで禁止されました。
BeanCurrentlyInCreationException
が原因でアプリケーションを起動できない場合は、依存関係のサイクルを断ち切るために構成を更新することを強く推奨します。
これができない場合は、 spring.main.allow-circular-references
をtrue
に設定するか、 SpringApplication
とSpringApplicationBuilder
の新しいセッターメソッドを使用することで、循環参照を再度許可できます。
これによって2.5の動作が復元され、依存関係のサイクルが自動的に中断されます。
Spring MVC向けPathPatternベースのパスマッチング戦略
登録されたSpring MVCハンドラマッピングに対してリクエストパスを照合するためのデフォルトの戦略が、AntPathMatcher
からPathPatternParser
に変更されました。
Spring Securityを使用している場合は、mvcMatchers
の使用を確認して、Matcherが引き続きニーズを満たしていることを確認する必要があります。
AntPathMatcher
を使用すると、authorizeRequests.mvcMatchers("hello").permitAll()
は/hello
へのアクセスを許可します。
PathPatternParser
をより正確に照合するには、代わりにauthorizeRequests.mvcMatchers("/hello").permitAll()
(先頭の/
に注意)を使用する必要があります。
デフォルトをAntPathMatcher
に戻す必要がある場合は、spring.mvc.pathmatch.matching-strategy
をant-path-matcher
に設定できます。
アクチュエータのエンドポイントも PathPattern
ベースのURLマッチングを使用するようになりました。
アクチュエータエンドポイントのパスマッチング戦略は、構成プロパティを介して構成できないことに注意してください。
アクチュエータとSpringfoxを使用している場合、アプリケーションの起動に失敗する可能性があります。
詳細については、この Springfox issue を参照してください。
アクチュエータ Env InfoContributor のデフォルト無効
env
情報contributor はデフォルトで無効になりました。
このcontributorは、名前が info
で始まるSpring Environmentのプロパティを公開します。
info
で始まるプロパティがあり、それらをEnvironmentEndpoint
に表示したい場合は、 management.info.env.enabled
をtrue
に設定します。
アプリケーションの起動
ApplicationStartup
に記録されるspring.boot.application.running
起動ステップは spring.boot.application.ready
に名前が変更されました。
FlightRecorderApplicationStartup
またはBufferingApplicationStartup
から生成されたファイルを処理している場合は、新しい名前を使用する必要があります。
Webリソースの構成
この構成はWebProperties
で設定されているため、Resources
を直接インジェクションすることはできなくなりました。
この情報にアクセスする必要がある場合は、代わりにWebProperties
を挿入する必要があります。
依存関係管理の削除
JBoss Transaction SPI
org.jboss:jboss-transaction-spi
の依存関係管理は削除されました。
org.jboss:jboss-transaction-spi
を使用している場合は、アプリケーションのニーズを満たす独自の依存関係管理を定義する必要があります。
Nimbus DS
com.nimbusds:oauth2-oidc-sdk
とcom.nimbusds:nimbus-jose-jwt
の依存関係管理は削除されました。
Spring Securityを使用している場合は、一時的な依存関係としてプルするバージョンに頼る必要があります。
Spring Securityを使用していない場合は、アプリケーションのニーズを満たす独自の依存関係管理を定義する必要があります。
HAL Browser
org.webjars:hal-browser
の依存関係管理は削除されました。
org.webjars:hal-browser
を使用している場合は、アプリケーションのニーズを満たす独自の依存関係管理を定義する必要があります。
Prometheusバージョンプロパティ
Prometheusのバージョンを制御するプロパティが prometheus-pushgateway.version
からprometheus-client.version
に変更されました。
これは、プロパティがプッシュゲートウェイだけでなく、Prometheusのクライアント内のすべてのモジュールのバージョンを管理しているという事実を反映するためです。
Embedded Mongo
Embedded Mongoを使用するには、spring.mongodb.embedded.version
プロパティを設定する必要があります。
これは、組み込みサポートで使用されるMongoDBバージョンが、アプリケーションが本番環境で使用するMongoDBバージョンと一致することを確認するのに役立ちます。
Oracle Database Driver の依存関係管理
Oracleデータベースドライバの依存関係管理が簡素化されました。
前述のとおり依存関係管理を削除したため、古い com.oracle.ojdbc
groupIdに引き続き依存している場合は、com.oracle.database.jdbc
グループにアップグレードする必要があります。
Vault関連のFlywayプロパティ削除
Flywayの7.12リリースは、Vault関連の設定をクローズドソースの拡張機能に移動しました。
残念ながら、これによりSpringBootがそれらを構成できなくなります。
結果として、対応する spring.flyway.vault-secrets
、spring.flyway.vault-token
、および spring.flyway.vault-url
プロパティが削除されました。
Flyway Teamsユーザーの場合、設定は FlywayConfigurationCustomizer
Bean、FluentConfigiguration.getExtensionConfiguration
、およびVaultApiExtension
を介して構成できます。
WebFlux セッションプロパティ
spring.webflux.session
プロパティグループは非推奨になり、server.reactive.session
に再配置されました。
古いプロパティは引き続き機能しますが、可能であれば新しいプロパティに移行すべきです。
Elasticsearchプロパティの統合
Elasticsearchクライアントの構成に使用される構成プロパティが統合されました。
以前は、ブロッキング高レベルRESTクライアントとリアクティブRESTクライアントを構成するためのいくつかの一般的なプロパティが、 spring.elasticsearch.rest
とspring.data.elasticsearch.clients.reactive
間で重複していました。
ブロッキングRESTクライアントを使用している場合の、古いプロパティとその置き換えを次の表に示します:
Deprecated Property | Replacement |
---|---|
spring.elasticsearch.rest.uris |
spring.elasticsearch.uris |
spring.elasticsearch.rest.username |
spring.elasticsearch.username |
spring.elasticsearch.rest.password |
spring.elasticsearch.password |
spring.elasticsearch.rest.connection-timeout |
spring.elasticsearch.connection-timeout |
spring.elasticsearch.rest.read-timeout |
spring.elasticsearch.socket-timeout |
spring.elasticsearch.rest.sniffer.interval |
spring.elasticsearch.restclient.sniffer.interval |
spring.elasticsearch.rest.sniffer.delay-after-failure |
spring.elasticsearch.restclient.sniffer.delay-after-failure |
リアクティブRESTクライアントを使用している場合の、古いプロパティとその置き換えを次の表に示します:
Deprecated Property | Replacement |
---|---|
spring.data.elasticsearch.client.reactive.endpoints |
spring.elasticsearch.uris |
spring.data.elasticsearch.client.reactive.use-ssl |
https scheme when configuring spring.elasticsearch.uris |
spring.data.elasticsearch.client.reactive.username |
spring.elasticsearch.username |
spring.data.elasticsearch.client.reactive.password |
spring.elasticsearch.password |
spring.data.elasticsearch.client.reactive.connection-timeout |
spring.elasticsearch.connection-timeout |
spring.data.elasticsearch.client.reactive.socket-timeout |
spring.elasticsearch.socket-timeout |
spring.data.elasticsearch.client.reactive.max-in-memory-size |
spring.elasticsearch.webclient.max-in-memory-size |
@PersistentはSpring Data Couchbaseでは考慮されない
デフォルトの動作をSpring Data Couchbaseに合わせるために、@Persistent
アノテーション付きの型は考慮されなくなりました。
そのアノテーションに依存している場合は、代わりに @Document
を使用できます。
Mavenビルド情報のデフォルト時間
Mavenプラグインのビルド情報サポートは、デフォルトのビルド時間としてproject.build.outputTimestamp
プロパティの値を使用するようになりました。
プロパティが設定されていない場合、ビルドセッションの開始時刻が以前と同じように使用されます。
以前と同様に、時刻を「オフ」に設定することで、時刻を完全に無効にすることができます。
レコードと @ConfigurationProperties
Java16のレコードで @ConfigurationProperties
を使用していて、レコードに単一のコンストラクタがある場合、@ConstructorBinding
でアノテーションを付ける必要はなくなりました。
レコードに複数のコンストラクタがある場合、プロパティバインディングに使用するコンストラクタを識別するために、 @ConstructorBinding
を使用する必要があります。
遅延OpenID Connect検出
OpenID Connectのissuer-uri
で構成されたspring-security-oauth2-resource-server
を使用するリソースサーバーアプリケーションの場合、Spring Bootは NimbusJwtDecoder
の代わりにSupplierJwtDecoder
を自動構成するようになりました。
これにより、Spring Securityの遅延OIDC検出サポートが有効になり、起動時間が短縮されます。
同様に、リアクティブアプリケーションの場合、 ReactiveSupplierJwtDecoder
が自動構成されます。
最小要件の変更
なし。
新規注目点
ヒント:構成の変更の完全な概要については、 構成変更ログ を確認してください。
SameSite Cookie属性サーブレットのサポート
server.servlet.session.cookie.same-site
プロパティを使用して、サーブレットアプリケーションのセッションCookieにSameSite
属性を設定できるようになりました。
これは、自動構成されたTomcat、Jetty、およびUndertowサーバーで機能します。
さらに、他のCookieに SameSite
属性を適用する場合は、CookieSameSiteSupplier
インターフェースを使用できます。
詳細およびサンプルコードについては、updated documentation を参照してください。
リアクティブサーバーセッションのプロパティ
(以前は spring.webflux.session
でサポートされていた)リアクティブサーバーでサポートされているセッションプロパティは、このリリースで拡張されました。
新しいプロパティは server.reactive.session
で利用可能であり、サーブレットバージョンと同等の機能を提供するようになりました。
プラグ可能なサニタイズルール
Spring Bootは、/env
および/configprops
エンドポイントに存在するセンシティブな値をサニタイズします。
構成プロパティを介してどのプロパティをサニタイズするかを構成することは可能でしたが、ユーザーは、プロパティがどの PropertySource
から発生したかに基づいてサニタイズルールを適用したい場合があります。
たとえば、Spring Cloud Vaultは、Vaultを使用して暗号化された値を保存し、Spring環境にロードします。
すべての値が暗号化されているため、プロパティソース全体のすべてのキーの値を空白にすることは理にかなっています。
このようなサニタイズのカスタマイズは、SanitizingFunction
型の@Bean
を追加することで構成できます。
Javaランタイム情報
次の例に示すように、info
エンドポイントはjava
キーの下でJavaランタイム情報を公開できるようになりました:
{ "java": { "vendor": "BellSoft", "version": "17", "runtime": { "name": "OpenJDK Runtime Environment", "version": "17+35-LTS" }, "jvm": { "name": "OpenJDK 64-Bit Server VM", "vendor": "BellSoft", "version": "17+35-LTS" } } }
この情報を info
エンドポイントの応答で公開するには、management.info.java.enabled
プロパティを true
に設定します。
ビルド情報プロパティの除外
Spring Boot MavenまたはGradleプラグインによって生成された build-info.properties
ファイルに追加される特定のプロパティを除外できるようになりました。
Mavenユーザーは、 <excludeInfoProperties>
タグを使用して、標準の group
、artifact
、 name
、version
、time
プロパティを除外できます。
たとえば、 version
プロパティを除外するには、次の構成を使用できます:
<configuration> <excludeInfoProperties> <excludeInfoProperty>version</excludeInfoProperty> </excludeInfoProperties> </configuration>
Gradleユーザーは、DSLの properties
ブロックでnull
値を使用できます:
task buildInfo(type: org.springframework.boot.gradle.tasks.buildinfo.BuildInfo) { destinationDir project.buildDir properties { version = null } }
ヘルスサポート
メインポートまたは管理ポートの追加パス
ヘルスグループは、メインポートまたは管理ポートのいずれかの追加パスで使用できるようにすることができます。 これは、セキュリティの目的でアクチュエータエンドポイントに個別の管理ポートを使用することが非常に一般的であるKubernetesなどのクラウド環境で役立ちます。 別のポートがあると、ヘルスチェックが成功した場合でもメインアプリケーションが正しく機能しない可能性があるため、ヘルスチェックの信頼性が低下する可能性があります。 一般的な構成では、すべてのアクチュエータエンドポイントが別々のポートにあり、メインポートの追加パスで利用可能な活性と準備のために使用されるヘルスグループがあります。
複合コントリビュータサポートの包含/除外
ヘルスグループは、 CompositeHealthContributor
の一部を包含/除外するように構成できます。
これは、コンポーネントへの完全修飾パスを指定することで実行できます。
たとえば、 test
という名前のコンポジット内にネストされたコンポーネントspring
は、 test/spring
を使用して含めることができます。
メトリクスのサポート
アプリケーションの起動
自動構成により、アプリケーションの起動に関連する2つのメトリクスが公開されます:
application.started.time
:アプリケーションの起動にかかる時間。application.ready.time
:アプリケーションがリクエストを処理できるようになるまでにかかる時間。
ディスクスペース
Micrometerの DiskSpaceMetrics
が自動構成されるようになりました。
disk.free
およびdisk.total
メトリクスは、現在の作業ディレクトリによって識別されるパーティションに対して提供されます。
使用されるパスを変更するには、独自のDiskSpaceMetrics
Beanを定義します。
タスクの実行とスケジューリング
Micrometerの ExecutorServiceMetrics
は、基盤となるThreadPoolExecutor
が使用可能である限り、すべての ThreadPoolTaskExecutor
およびThreadPoolTaskScheduler
Beanに対して自動構成されるようになりました。
メトリクスは、Bean名から派生したエグゼキュータの名前でタグ付けされます。
Jetty コネクションと SSL
Micrometerの JettyConnectionMetrics
が自動構成されるようになりました。
Additionally, when server.ssl.enabled
is set to true
, Micrometer’s JettySslHandshakeMetrics
are also auto-configured.
さらに、server.ssl.enabled
がtrue
に設定されている場合、Micrometerの JettySslHandshakeMetrics
も自動構成されます。
Dynatrace v2 APIへのエクスポート
Dynatrace v2 APIへのメトリクスのエクスポートのサポートが追加されました。
ホスト上でローカルOneAgentが実行されている場合、必要なのは io.micrometer:micrometer-registry-dynatrace
への依存だけです。
ローカルのOneAgentがない場合は、management.metrics.export.dynatrace.uri
プロパティとmanagement.metrics.export.dynatrace.api-token
プロパティを構成する必要があります。
v2 APIに固有のその他の設定は、management.metrics.export.dynatrace.v2
プロパティを使用して構成できます。
詳細については、updated reference documentation を参照してください。
Dockerイメージ構築のサポート
追加イメージタグ
MavenおよびGradleプラグインは、 tags
構成パラメータを使用してビルドされた後、生成されたイメージに追加のタグを適用することをサポートするようになりました。
詳細については、更新された Gradle と Maven のリファレンスドキュメントを参照してください。
ネットワーク構成
Mavenプラグインの spring-boot:build-image
ゴールとGradlebootBuildImage
タスクにnetwork
構成パラメータが追加されました。
このパラメータを使用して、Cloud Native Buildpacks Builderプロセスを実行するコンテナが使用するネットワークドライバを構成できます。
キャッシュ構成
MavenおよびGradleプラグインは、 buildCache
およびlaunchCache
構成パラメータを使用して、ビルドパックによってビルドされたイメージに提供されるレイヤーをキャッシュするために使用されるボリュームの名前のカスタマイズをサポートするようになりました。
詳細については、更新された Gradle と Maven のリファレンスドキュメントを参照してください。
Spring Data Enversの自動構成
Spring Data Enversの自動構成が提供されるようになりました。
To use it, add a dependency on org.springframework.data:spring-data-envers
and update your JPA repositories to extend from RevisionRepository
.
これを使用するには、org.springframework.data:spring-data-envers
への依存関係を追加し、JPAリポジトリをRevisionRepository
から拡張するように更新します。
Redisコネクションプール
commons-pool2
がクラスパス上にある場合、Redis(JedisとLettuceの両方)が自動的にプーリングを有効にするようになりました。
必要に応じて、spring.redis.jedis.pool.enabled
またはspring.redis.lettuce.pool.enabled
をfalse
に設定してプーリングを無効にしてください。
spring-rabbit-streamの自動設定
Spring AMQPの新しい spring-rabbit-stream
モジュールの自動構成が追加されました。
spring.rabbitmq.listener.type
プロパティがstream
に設定されている場合、 StreamListenerContainer
は自動構成されます。
spring.rabbitmq.stream.*
プロパティを使用してブローカーへのアクセスを構成し、 spring.rabbitmq.listener.stream.native-listener
を使用してネイティブリスナーのサポートを有効にすることができます。
Kafka SSLプロパティでのPEM形式のサポート
以前は、KafkaはSSLのファイルベースのキーストアとトラストストアのみをサポートしていました。 KIP-651で、 PEM形式を使用できるようになりました。
Spring Bootは、PEM形式を使用してSSL証明書と秘密鍵を構成できるようにする次のプロパティを追加しました:
spring.kafka.ssl.key-store-key
spring.kafka.ssl.key-store-certificate-chain
spring.kafka.ssl.trust-store-certificates
Mavenプラグインのstart
Goalの構成の改善
Mavenプラグインのstart
Goalはコマンドラインから、より構成しやすくなりました。
そのwait
プロパティとmaxAttempts
プロパティは、それぞれ spring-boot.start.wait
とspring-boot.start.maxAttempts
を使用して指定できます。
自動構成されたSpring Webサービスサーバーのテスト
Webサービスの @Endpoint
Beanをテストするために使用できる新しいアノテーション@WebServiceServerTest
が導入されました。
このアノテーションは、@Endpoint
Beanを含むテストスライスを作成し、Webサービスエンドポイントのテストに使用できるMockWebServiceClient
Beanを自動構成します。
Bean ValidationメッセージのMessageSourceベースの補間
アプリケーションのMessageSource
は、制約メッセージの{parameters}
を解決するときに使用されるようになりました。
これにより、アプリケーションのmessages.properties
ファイルをBean Validationメッセージに使用できます。
パラメータが解決されると、Bean Validationのデフォルトの補間器を使用してメッセージの補間が完了します。
Spring MVCをテストするためのWebTestClientの使用
開発者はWebTestClient
を使用して、モック環境でWebFluxアプリをテストしたり、ライブサーバーに対して任意のSpring Webアプリをテストしたりできます。
この変更により、モック環境でSpring MVCの WebTestClient
も有効になります:
@AutoConfigureMockMvc
アノテーションが付けられたクラスにWebTestClient
がインジェクションできます。
これでサポートが完了し、単一のAPIを使用してすべてのWebテストを実行できるようになりました!
Spring Integration PollerMetadata プロパティ
Spring Integration PollerMetadata
(毎秒無制限の数のメッセージをポーリングする)をspring.integration.poller.*
構成プロパティでカスタマイズできるようになりました。
Log4j2の複合構成のサポート
Log4j2の複合構成がサポートされるようになりました。
これを使用するには、メイン構成をオーバーライドするセカンダリ構成ファイルのコンマ区切りリストを使用して、logging.log4j2.config.override
プロパティを構成します。
主な構成は、Spring Bootのデフォルト、log4j2.xml
などのよく知られた標準の場所、または以前のようにlogging.config
プロパティで指定された場所から供給されます。
依存関係のアップグレード
Spring Boot 2.6は、いくつかのSpringプロジェクトの新しいバージョンに移行します:
- Spring Security 5.6
- Spring Data 2021.1
- Spring HATEOAS 1.4
- Spring Kafka 2.8
- Spring AMQP 2.4
- Spring Session 2021.1.0
多数のサードパーティの依存関係も更新されましたが、その中でも注目すべきものは次のとおりです:
- Apache Kafka 3.0
- Artemis 2.19
- Cassandra Driver 4.13
- Commons DBCP 2.9
- Commons Pool 2.11
- Couchbase Client 3.2.2
- Elasticsearch 7.15
- Flyway 8.0.5
- Hibernate 5.6
- JUnit Jupiter 5.8
- Jedis 3.7
- Kafka 3.0
- Kotlin 1.6
- Liquibase 4.5
- Micrometer 1.8
- Mockito 4.0
- MongoDB 4.4
- Postgresql 42.3
- QueryDSL 5.0
- SnakeYAML 1.29
- Thymeleaf Layout Dialect 3.0
その他
上記の変更とは別に、次のような多くのマイナーな調整と改善も含みます:
NoSuchMethodError
の失敗分析には、呼び出し元のクラスがロードされた場所に関する情報が含まれるようになりました。ClientResourcesBuilderCustomizer
Beanを定義して、LettuceのClientResources
がデフォルトの自動構成を保持するようにカスタマイズできるようになりました。Flywayの
detectEncoding
、failOnMissingLocations
、およびignoreMigrationPatterns
構成設定の構成プロパティが追加されました。SpringApplicationBulder
を作成するときに、アプリケーションで使用されるカスタムのResourceLoader
を提供できます。WebSessionIdResolver
を定義して、自動構成されたWebSessionManager
によって使用されるリゾルバをカスタマイズできるようになりました。RSocketConnectorConfigurer
Beanは、自動構成されたRSocketRequester.Builder
に自動的に適用されるようになりました。spring-boot-configuration-processor
は、Lombokの@Value
でアノテーションが付けられたクラスのメタデータを生成できるようになりました。新しい
server.tomcat.reject-illegal-header
構成プロパティをtrueに設定して、Tomcatが不正なヘッダーを受け入れるように構成できます。Stackdriverを使用する場合、
management.metrics.export.stackdriver.resource-labels.*
構成プロパティを設定することにより、モニターリソースでラベルを構成できるようになりました。@EntityScan
は、basePackages
属性でコンマ区切りの値をサポートするようになりました。Reactor Nettyのアイドルタイムアウトを制御するために使用できる新しい構成プロパティ
server.netty.idle-timeout
が追加されました。Devtoolsがグローバル設定をロードする場所は、
spring.devtools.home
システムプロパティまたはSPRING_DEVTOOLS_HOME
環境変数を使用して構成できるようになりました。RabbitTemplateConfigurer
のsetterメソッドはpublic
になりました。heapdump
エンドポイントがOpenJ9でサポートされるようになり、PHD形式でヒープダンプが生成されます。新しい構成プロパティが、WebFluxの
spring.webflux.multipart.*
でのマルチパートサポートでサポートされるようになりました。自動構成されたSpring AMQP
MessageListenerContainer
を構成するために、任意のContainerCustomizer
Beanが呼び出されるようになりました。Jacksonのデフォルトのleniencyは、
spring.jackson.default-leniency
プロパティを使用して構成できます。分布統計の有効期限とバッファ長を構成できるようになりました。
Lettuceのコマンドレイテンシメメトリクスが自動構成されるようになりました。
ディスクスペースメトリクスは、
management.metrics.system.diskspace.paths
プロパティを使用して1つ以上のパスで構成できます。ユーザーは、
RedisStandaloneConfiguration
Beanを提供することで、Redisの自動構成を制御できます。H2コンソールが自動構成されたときに、使用可能なすべてのデータソースのURLがログに記録されるようになりました。
新しい構成プロパティ
spring.integration.management.default-logging-enabled
を使用して、値をfalse
に設定することにより、Spring Integrationのデフォルトのログを無効にすることができます。AuthenticationManagerProvider
Beanが存在する場合、UserDetailsService
の自動構成はバックオフするようになりました。
Spring Boot 2.6.0 での非推奨
AbstractDataSourceInitializer
は廃止され、DataSourceScriptDatabaseInitializer
が採用されました。 同様に、AbstractDataSourceInitializer
のサブクラスは廃止され、新しいDataSourceScriptDatabaseInitializer
ベースの同等のものが採用されました。SpringPhysicalNamingStrategy
は廃止され、Hibernate 5.5のCamelCaseToUnderscoresNamingStrategy
が採用されました。AbstractApplicationContextRunner
の3つのメソッドは非推奨になり、新しいRunnerConfiguration
ベースの同等のメソッドが採用されました。SpringApplicationRunListener
のstarted
メソッドとrunning
メソッドは、Duration
を受け入れるバージョンに置き換えられました。ApplicationStartedEvent
とApplicationReadyEvent
のコンストラクタは、Duration
を受け入れるバージョンに置き換えられました。EnvironmentEndpoint.sanitize
は今後の削除のために非推奨になりました。