Spring Boot は、最小限の手間で Spring を活用した実稼働グレードのアプリケーションとサービスを作成するのに役立ちます。 Spring プラットフォームについて独自の見解を取り入れているため、新規ユーザーと既存ユーザーが必要な部分にすぐにアクセスできます。
Spring Boot を使用して、 java -jar
またはより従来の WAR デプロイメントを使用して起動できるスタンドアロン Java アプリケーションを作成できます。 Spring スクリプトを実行するコマンドライン ツールも提供します。
私たちの主な目標は次のとおりです。
すべての Spring 開発に対して、大幅に高速化され、広くアクセスできる入門エクスペリエンスを提供します。
自分の意見を主張してください。ただし、要件がデフォルトから逸脱し始めたら、すぐに邪魔をしないようにしてください。
大規模なクラスのプロジェクトに共通するさまざまな非機能機能 (組み込みサーバー、セキュリティ、メトリクス、ヘルス チェック、外部化された構成など) を提供します。
コード生成や XML 構成の必要はまったくありません。
リファレンス ドキュメントには、詳細なインストール手順と包括的なgetting started
ガイドが含まれています。
Java での完全な Spring Boot アプリケーションの簡単なティーザーを次に示します。
import org.springframework.boot.*;import org.springframework.boot.autoconfigure.*;import org.springframework.web.bind.annotation.*;@RestController@SpringBootApplicationpublic class 例 {@RequestMapping("/")String home( ) {return "Hello World!"; } public static void main(String[] args) {SpringApplication.run(Example.class, args); } }
Spring Boot に問題がありますか?私たちは助けたいのです!
リファレンス ドキュメント、特にハウツー ドキュメントを確認してください。最も一般的な質問に対する解決策が記載されています。
Spring の基本を学ぶ — Spring Boot は他の多くの Spring プロジェクトに基づいて構築されています。 spring.io Web サイトで豊富な参考ドキュメントを確認してください。 Spring を初めて使用する場合は、いずれかのガイドを試してください。
アップグレードする場合は、アップグレード手順と「注目すべき新機能」についてリリース ノートをお読みください。
質問する — 私たちは、 spring-boot
でタグ付けされた質問について stackoverflow.com を監視します。 Gitter のコミュニティとチャットすることもできます。
Spring Boot のバグは、github.com/spring-projects/spring-boot/issues で報告してください。
Spring Boot は、GitHub の統合問題追跡システムを使用してバグと機能リクエストを記録します。問題を提起したい場合は、以下の推奨事項に従ってください。
バグを記録する前に、問題トラッカーを検索して、誰かがすでに問題を報告していないかどうかを確認してください。
問題がまだ存在しない場合は、新しい問題を作成します。
問題レポートにはできるだけ多くの情報を提供してください。使用している Spring Boot のバージョン、オペレーティング システム、および JVM のバージョンを知りたいと考えています。
コードを貼り付けるか、スタック トレースを含める必要がある場合は、Markdown を使用します。 ``` はテキストの前後でエスケープされます。
可能であれば、問題を再現するテスト ケースまたはプロジェクトを作成し、問題に添付してください。
Spring Boot (repo.spring.io 内のバイナリ) を使用するためにソースからビルドする必要はありませんが、最新かつ最高のものを試したい場合は、Gradle を使用して Spring Boot をビルドし、ローカルの Maven キャッシュに公開できます。ラッパー。 JDK 17 も必要です。
$ ./gradlew publicToMavenLocal
これにより、すべての jar とドキュメントがビルドされ、ローカルの Maven キャッシュに公開されます。どのテストも実行されません。すべてをビルドしたい場合は、 build
タスクを使用します。
$ ./gradlew ビルド
Spring Boot にはいくつかのモジュールがあります。簡単な概要は次のとおりです。
Spring Boot の他の部分をサポートする機能を提供するメイン ライブラリ。これらには次のものが含まれます。
SpringApplication
クラス。スタンドアロン Spring アプリケーションの作成に使用できる静的な便利なメソッドを提供します。その唯一の仕事は、適切な Spring ApplicationContext
作成して更新することです。
コンテナー (Tomcat、Jetty、または Undertow) を選択できる組み込み Web アプリケーション。
ファーストクラスの外部化された構成のサポート。
実用的なログのデフォルトのサポートを含む、便利なApplicationContext
イニシャライザ。
Spring Boot は、クラスパスの内容に基づいて、一般的なアプリケーションの大部分を構成できます。単一の@EnableAutoConfiguration
アノテーションにより、Spring コンテキストの自動構成がトリガーされます。
自動構成は、ユーザーがどの Bean を必要とするかを推測しようとします。たとえば、 HSQLDB
がクラスパス上にあり、ユーザーがデータベース接続を何も構成していない場合は、おそらくインメモリ データベースを定義する必要があると考えられます。ユーザーが独自の Bean の定義を開始すると、自動構成は常に後退します。
スターターは、アプリケーションに含めることができる便利な依存関係記述子のセットです。サンプルコードを探し回ったり、大量の依存関係記述子をコピーアンドペーストしたりする必要がなく、必要なすべての Spring および関連テクノロジーをワンストップで入手できます。たとえば、データベース アクセスに Spring と JPA の使用を開始したい場合は、プロジェクトにspring-boot-starter-data-jpa
依存関係を含めれば準備完了です。
アクチュエーター エンドポイントを使用すると、アプリケーションを監視し、操作することができます。 Spring Boot Actuator は、アクチュエーターのエンドポイントに必要なインフラストラクチャを提供します。これには、アクチュエータ エンドポイントの注釈サポートが含まれています。このモジュールは、 HealthEndpoint
、 EnvironmentEndpoint
、 BeansEndpoint
など、多くのエンドポイントを提供します。
これにより、クラスパスの内容と一連のプロパティに基づいて、アクチュエータ エンドポイントの自動構成が提供されます。たとえば、Micrometer がクラスパス上にある場合、 MetricsEndpoint
自動構成されます。これには、HTTP または JMX 経由でエンドポイントを公開するための構成が含まれています。 Spring Boot AutoConfigure と同様に、これはユーザーが独自の Bean の定義を開始すると元に戻ります。
このモジュールには、アプリケーションをテストするときに役立つコア項目と注釈が含まれています。
他の Spring Boot 自動構成モジュールと同様に、spring-boot-test-autoconfigure はクラスパスに基づいてテストの自動構成を提供します。これには、テストが必要なアプリケーションのスライスを自動的に構成できる多くの注釈が含まれています。
Spring Boot Loader は、 java -jar
を使用して起動できる単一の jar ファイルを構築できる秘密のソースを提供します。通常、 spring-boot-loader
直接使用する必要はなく、代わりに Gradle または Maven プラグインを使用します。
spring-boot-devtools モジュールは、アプリケーション開発エクスペリエンスをよりスムーズにするために、自動再起動などの追加の開発時機能を提供します。完全にパッケージ化されたアプリケーションを実行すると、開発者ツールは自動的に無効になります。
spring.io サイトには、Spring Boot の使用方法を段階的に示すいくつかのガイドが含まれています。
Spring Boot を使用したアプリケーションの構築は、アプリケーションを作成し、実行し、いくつかの管理サービスを追加する方法を説明する入門ガイドです。
Spring Boot Actuator を使用した RESTful Web サービスの構築は、REST Web サービスを作成するためのガイドであり、サーバーの構成方法も示しています。
Spring Boot は、Apache 2.0 ライセンスに基づいてリリースされたオープンソース ソフトウェアです。