Configurationクラスを理解しよう

通常のJavaや他のフレームワークでは、アプリケーションの設定をxmlで行うことが多いかと思います。

しかし、SpringBootでは、@Configuration を付与したJavaクラスを用いてアプリケーションの設定ができます。

xmlで設定を記述することの煩わしさをなくすためです。今回は、このConfigurationクラスについて説明します。

サンプルコードはこちらを参照。

1.Configureクラスの書き方について。

Configurationクラスの記述方法はシンプルです。

  1.  ① @Configuration をクラスに付与する。
  2.  ② @Bean を付与したメソッドを作成し、設定対象のクラスをメソッドの返り値にする。

上の例では、RestTemplate クラスに、通信時にinterceptorクラスの処理を挟み込むように設定しています。

以上で記述は完了です。次は、Configurationクラスの読み込みに入ります。

2. Configurationクラスの読み込みについて。

Configurationクラスを読み込むためには、アプリケーションの起動クラスに、@EnableAutoConfiguration を付与し、環境クラスを自動で読み込むように設定します。

この処理は、パッケージ作成時に、標準で実装されています。

アプリケーション起動クラスは、初期状態で以下のように実装されます。

このクラスでは、@EnableAutoConfiguration は付与されていません。しかし、@SpringBootApplication アノテーションの中に実装されており、これにより環境クラスの自動読み込みが作用します。

あるアノテーションの中に他のアノテーションが付与されている場合、そのアノテーションを付与することで、その中で付与されいるアノテーションも作用する仕組みになっております。

このようにして、SpringBootは起動時に環境クラスの自動読み込みを実現しています。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です