警告:“ WebMvcConfigurerAdapter型は推奨されていません”

1.はじめに

このクイックチュートリアルでは、Spring 5.x.xバージョンで作業しているときに発生する可能性がある警告の1つ、つまり廃止予定の WebMvcConfigurerAdapter クラスに関する警告を見ていきます。

この警告が発生する理由と対処方法がわかります。

2警告が表示される理由

この警告は、既存のアプリケーションをアップグレードするとき、または古いAPIを使用して新しいアプリケーションを構築するときに、Springバージョン5(またはSpring Boot 2)を使用している場合に表示されます。

その背後にある歴史を簡単に見てみましょう。

以前のバージョンのSpringでは、バージョン4まで、Webアプリケーションを設定したい場合は、 WebMvcConfigurerAdapter クラスを使用できました。

@Configuration
public WebConfig extends WebMvcConfigurerAdapter {

   //...
}

これは WebMvcConfigurer インターフェースを実装する抽象クラスで、継承されたすべてのメソッドに対する空の実装が含まれています。

それをサブクラス化することで、ビューリゾルバ、インターセプタなどのさまざまなMVC設定要素にフックを提供するそのメソッドをオーバーライドできます。

ただし、Java 8では、インタフェースにデフォルトメソッドの概念が追加されました。

当然、Springチームは新しいJava言語機能を最大限に活用するためにフレームワークを更新しました。

3.解決策

前述のように、Spring 5以降の WebMvcConfigurer インターフェースには、そのすべてのメソッドのデフォルト実装が含まれています。その結果、抽象アダプタクラスは非推奨としてマークされました。

  • インターフェイスを直接使用して警告を取り除くことができる方法を見てみましょう。

@Configuration
public WebConfig implements WebMvcConfigurer {
   //...
}

そしてそれだけです!変更はかなり簡単にできるはずです。

オーバーライドされたメソッドへの super() 呼び出しがある場合は、それらも削除する必要があります。それ以外の場合は、通常どおり設定コールバックをオーバーライドできます。

警告を削除することは必須ではありませんが、新しいAPIがより便利になり、将来のバージョンでは廃止予定のクラスが削除される可能性があるため、削除することをお勧めします。

4.まとめ

この短い記事では、 WebMvcConfigurerAdapter クラスの非推奨を参照して警告を修正する方法を説明しました。

前の投稿:ActivitiでのProcessEngineの設定
次の投稿:JSF EL 2の紹介