バージョンアップ情報
Spring Boot情報
Spring Bootとは
Spring Boot(スプリングブート)は、オープンソースのJavaフレームワークです。
JavaのWebアプリケーションフレームワークであるSpring Frameworkを使用して作成されたアプリケーションを、少ない設定で、短期間で実行できることを目的に設計・開発されました。
Spring Bootは、Tomcat、Jetty、UndertowといったWebサーバ・サーブレットコンテナとアプリケーションを、ひとつの実行可能なjar(Java Archive)またはwar(Web application Archive)ファイルに統合します。 Spring FrameworkによるMVCモデルのWebアプリケーションやRESTful WEB サービスをひとつのjarファイルで実行可能です。Javaがインストールされていれば、Webアプリケーションサーバを構築することなくWebアプリケーションやRESTful WEBサービスを起動することができます。
Spring Bootを始めるためには、MavenやGradleなどの依存関係管理をサポートするビルドツールを使用することが推奨されています。
主な特徴
スタンドアロンSpringアプリケーションの作成
Springアプリケーションを動かすためのSpringApplicationクラスが提供されています。
SpringApplicationクラスのrun()メソッドを呼び出すだけでSpringアプリケーションを起動させることができます。
Tomcat、Jetty、UnderTowのjarへの組み込み
ビルドファイルに依存関係を書くだけで、Webサーバ・サーブレットコンテナをjarファイルに組み込みます。Webサーバやアプリケーションサーバを構築・インストールする必要がありません。
設定簡素化のため、ビルドツールに合わせたSpring Bootアプリケーションプロジェクトの雛形であるスターターファイルが提供されています。
Spring Initializrページから、Spring Bootバージョンやビルドツール(Maven、Gradle)に合わせたスターターファイルをダウンロードすることができます。
Bean定義の自動化
ConfigurationおよびEnableAutoConfigurationアノテーションを付与することで、Springアプリケーションで必要となっていたBean定義を、Spring Bootの自動設定クラスが自動的に定義します。アプリケーションをデバッグモードで起動させることで、自動設定を確認することができます。
Spring Bootでは、Redis, MongoDB, Solr, ElasticSearch, LDAPなどへの接続などの自動設定クラスも提供されています。自動設定クラスを読み込み、プロパティから接続情報を指定するだけで、それらのサーバーへ接続できます。
実稼働環境に対応した機能の提供(メトリック、ヘルスチェック、外部化された設定など)
Spring Boot Actuatorにより、稼働環境の状態を数値で取得するメトリクスサービスが提供されています。メトリクスサービスでは、単純に現在値を取得する「ゲージ」と、インクリメントする値を取得する「カウンタ」をサポートしています。Spring Boot Actuatorは、ヘルスチェックのためのエンドポイントも提供しています。
また、Valueアノテーションを使用することで、プロパティファイル、YAMLファイル、環境変数、およびコマンドライン引数など外部化された設定を注入することができます。稼動環境に依存する設定を外部化することにより、異なる稼働環境においても同じアプリケーションコードを使用することが可能です。
Spring Bootがサポートする組み込みサーブレットコンテナ
(Spring Boot 3.1.2の場合)
コンテナ名 |
サーブレットバージョン |
Javaバージョン |
---|---|---|
Tomcat 10.1 |
6.0 |
Java 17 〜 20 |
Jetty 11.0 |
5.0 |
Java 17 〜 20 |
Undertow 2.3 |
6.0 |
Java 17 〜 20 |
Spring Boot CLI
Spring Boot CLIは、Springアプリケーションのプロトタイプを早く作成することができるコマンドラインツールです。Spring Boot CLIを使用することで、Groovyで記述されたコードを実行することが可能です。
Spring Boot CLIのダウンロードページから、Spring Boot CLIをダウンロードすることができます。
動作環境
Spring Boot 3.1.2では、以下の要件があります。
- Java 17以降
- Spring Framework 6.0.11
- Maven(3.6.3以降)、Gradle 7.x(7.5以降)・Gradle 8.xでは明示的にビルドがサポートされています。
Spring Bootのライセンス
Spring Bootのライセンスは、Apache License 2.0.ライセンスです。
Spring Bootの使用にあたって、著作権の表示などの条件に従うことで、商用利用、修正、再頒布などが自由に行えます。
製品ダウンロード
Spring Bootのスタートアップページから、Mavenプロジェクト、Gradleプロジェクトのスターターファイルをダウンロードすることができます。
参考情報
オープンソース年間サポートサービス
OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。
関連OSS
-
サポート対象
Apache Struts
アパッチストラッツ。Java言語を用いてWebアプリケーションを開発するためのフレームワークです。
-
Apache Wicket
アパッチウィケット。Javaで実装されたコンポーネントベースのWebアプリケーションフレームワークです。
-
サポート対象
MyBatis
マイバティス。iBATISの後継プロジェクトとして開発され、Javaならびに.NET Frameworkプラットフォームが対象のデータマッパーフレームワークです。