Spring Boot
で構成された2つのソリューション
Spring Bootは、さまざまなプロジェクトに異なる構成要件があることを認識しているため、2つの方法が提供されていることを認識しています。
マニュアル構成(
)- - 洗練する必要があるアイテムの場合。
@SpringBootConfiguration
自動構成() - 合意されたより多くの構成(つまり、手動設定が少ない)で合意された恩恵を受けるアイテムの場合。
-
選択は、プロジェクトの特定のニーズに依存します。
@EnableAutoConfiguration
いつ使用されますか?
シーンを使用 |
方法 |
原因 |
豆と構成を完全に制御する必要があります |
> |
すべてのコンテンツを手動で定義します(クラシックスプリングプロジェクトのように)。 |
nepring boot自動構成一般的に使用されるコンポーネント |
> |
依存関係に基づいてBeanを自動的に構成して時間を節約します。 |
同時に2つの方法を使用する必要があります |
両方の方法が使用されます |
自動構成が有効になっていますが、手動構成はデフォルト値をカバーします。 |
特定の構成テストスプリングブートアプリケーションを使用する必要があります |
> |
は、単体テストにカスタムテスト構成を使用するために使用できます。 |
自動構成を無効または調整する必要があります |
@enclude = {datasourceautoconfiguration.class}) |
必要に応じて特定の自動構成を無効にします。 |
実用的なシーン
1なりフルマニュアル構成(従来の春)
プロジェクトを完全に制御する必要がある場合(たとえば、システムの移行や高度にカスタマイズされたシステム):
<code class="language-java">@SpringBootConfiguration
public class MyAppConfig {
@Bean
public DataSource dataSource() {
return new HikariDataSource(); // 手动配置数据库
}
}</code>
ログイン後にコピー
自動構成なし- :すべての豆を手動で定義する必要があります。
隠された動作を避けたいときは非常に便利です。
-
2なり自动完全自動構成(スプリングブートデフォルト)スプリングブートですべてを処理したい場合は、次のものを使用してください。
自動構成データベース、Webサーバー、セキュリティなど。
高速開発とマイクロサービスに非常に適しています。
<code class="language-java">@SpringBootApplication // 包含 @EnableAutoConfiguration
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}</code>
ログイン後にコピー
- 3か混合方法(自動マニュアル構成)
自動構成を構成する必要があるが、一部の部品をカバーする場合は、次の操作を実行してください。
-
マニュアルビーン(
)を自動的に構成することをお勧めします。
自動構成のほとんどは非常に優れていますが、重要な部分をカスタマイズする必要がある場合は非常に便利です。
<code class="language-java">@SpringBootApplication
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
@Configuration
class ManualConfig {
@Bean
public DataSource dataSource() {
return new HikariDataSource(); // 覆盖默认自动配置的 DataSource
}
}</code>
ログイン後にコピー
要約
はい、Spring Bootは、構成の問題を解決するための2つのソリューションを提供します
-
迅速な発展dataSource
完全に制御するには、
を使用してください。 -
バランスの取れた方法
の場合、自動構成にほとんどのことを処理させますが、必要に応じてカバーします。 ?
以上がSpring-:すぐに使用できる設定付きの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。