Spring Bootの@SpringBootConfigurationのガイド

1. 概要

このチュートリアルでは、https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/SpringBootConfiguration.html [_ @ SpringBootConfiguration_]アノテーションについて簡単に説明します。 また、Spring Bootアプリケーションでの使用法も見ていきます。

[[spring boot application configuration]]
=== 2. スプリングブートアプリケーションの構成

  • _ @ SpringBootConfiguration_は、Spring Bootフレームワークの一部であるクラスレベルのアノテーション*です。 クラスがアプリケーション構成を提供することを示します

    Spring BootはJavaベースの構成を優先します。 その結果、_ @ SpringBootConfiguration_注釈は、アプリケーションの構成の主要なソースです。 一般に、_main()_メソッドを定義するクラスは、この注釈の適切な候補です。

2.1. _ @ SpringBootConfiguration_

ほとんどのSpring Bootは、https://www.baeldung.com/spring-boot-annotations [_ @ SpringBootApplication_]を介して_ @ SpringBootConfiguration_を使用します。これは、それを継承する注釈です。 アプリケーションが_ @ SpringBootApplication_を使用している場合、すでに_ @ SpringBootConfiguration_を使用しています。
アプリケーションでの_ @ SpringBootConfigurationの使用方法を見てみましょう。
まず、設定を含むアプリケーションクラスを作成します。
@SpringBootConfiguration
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    @Bean
    public PersonService personService() {
        return new PersonServiceImpl();
    }
}
_ @ SpringBootConfiguration_注釈は、_Application_クラスに注釈を付けます。 これは、Springコンテナに*クラスに_ @ Bean_定義メソッド*があることを示します。 つまり、依存関係をインスタンス化および構成するメソッドが含まれています。
たとえば、_Application_クラスには、_PersonService_ BeanのBean定義メソッドが含まれています。
さらに、コンテナは構成クラスを処理します。 これにより、アプリケーションのBeanが生成されます。 その結果、_ @ Autowired_や_ @ Inject_などのlink:/inversion-control-and-dependency-injection-in-spring[Dependency Injection]注釈を使用できるようになりました。

2.2. _ @ SpringBootConfiguration_ vs _ @ Configuration_

_ @ SpringBootConfiguration_は、https://www.baeldung.com/spring-bean-annotations [_ @ Configuration_]アノテーションの代替です。 主な違いは、_ @ SpringBootConfiguration_により構成を自動的に特定できることです。 これは、単体テストまたは統合テストで特に役立ちます。
推奨事項は、アプリケーションに対して* @ SpringBootConfiguration_または_ @ SpringBootApplication_ *を1つだけにすることです。 ほとんどのアプリケーションは、単に[email protected]_を使用します。

3. 結論

この記事では、_ @ SpringBootConfiguration_アノテーションについて簡単に説明しました。 さらに、Spring Boot Applicationでの_ @ SpringBootConfiguration__の使用法を調べました。 Springの_https://www.baeldung.com/spring-core-annotations [@Bean] _ annotation __.__も確認しました
ここの例の完全なソースコードは、いつものようにhttps://github.com/eugenp/tutorials/tree/master/spring-boot-bootstrap[GitHubの上]です。