トップ OSS紹介 Spring Boot

Spring Boot

サポート対象

NRIのOpenStandiaが提供するSpring Boot最新情報

バージョンアップ情報

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
    サポート対象

    Apache Struts

    アパッチストラッツ。Java言語を用いてWebアプリケーションを開発するためのフレームワークです。

  • Apache Wicket

    Apache Wicket

    アパッチウィケット。Javaで実装されたコンポーネントベースのWebアプリケーションフレームワークです。

  • MyBatis
    サポート対象

    MyBatis

    マイバティス。iBATISの後継プロジェクトとして開発され、Javaならびに.NET Frameworkプラットフォームが対象のデータマッパーフレームワークです。

オープンソースに関する様々な課題、OpenStandiaがまるごと解決します。
下記コンテンツも
あわせてご確認ください。