4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

 前回の「Springとは」から続いて、Spring Bootについて書きます。

 前回の記事は以下からどうぞ。

■ Springの問題点

 Springには便利な機能が沢山あるため、それらを使えば開発がとても楽になります。ですが、Springには以下のような問題がありました。

問題1:各機能のインストールと設定

 Springの機能を使うためには、Springの公式サイトでインストール方法と設定方法を調べる必要がありました。これらの設定はxmlファイルに記述する必要があり、xmlの書き方も学習しなければいけません。さらに、複数の機能を組み合わせる場合、その設定が複雑化していきます。

・問題2:アプリケーションサーバーのインストールや設定が必要

 Webアプリケーションを動作させるためには、アプリケーションサーバー(以降、APサーバーと省略)が必要です。Javaでは、TomcatというオープンソースのAPサーバーがよく使われます。開発を始めるためには、開発者全員がAPサーバーのインストールや設定をしなければいけません。開発環境だけでなく、本番環境でもAPサーバーのインストールや設定が必要です。


 これらの問題により、Springを使うためには最初の設定に時間がかかっていました。そこで登場したのがSpring Bootです。Spring Bootとは、Springを使ったアプリケーションを簡単に素早く開発するためのツールのような存在です。以前説明したフレームワークとは少し異なるため、フレームワークではなく、ツールのような存在としています。なお、Spring BootもSpringプロジェクトの1つであり、現在も開発が続けられています。

 Spring Bootでは、「設定より規約」というソフトウェア設計の考え方が採用されています。「設定より規約」により、Springを使った開発をさらに効率化することができます。

■「設定より規約」とは

 「設定より規約」には、大きく2つの便利な考え方があります。それが、”デフォルト設定の用意”と、”ソースコードの自動生成”です。

・デフォルト設定の用意

 フレームワークを使うためには、色々な設定が必要です。ですが、プロジェクトが異なっても同じ設定をすることがあります。そこで、設定の手間を省くために、よく使われる設定をデフォルトで用意しています。このデフォルト設定が規約の1つです。ツールが用意した規約(デフォルト設定)とは異なる設定をしたい場合のみ、開発者は設定を変更します。

 Spring Bootではプロジェクト作成時に、必要なフレームワークやライブラリを選択します。すると、Spring Bootがあらかじめ用意した設定が適用されます。プロパティファイルを編集すれば、簡単に設定変更もできます。

 さらに、Spring BootでWebアプリケーション開発の機能を選択すると、APサーバーが自動で組み込まれます。デフォルトでは、TomcatがAPサーバーとして組み込まれます。そのため、APサーバーのインストールや設定を省略できます。

・ソースコードの自動生成

 また、「設定より規約」では、規約に沿ったソースコードを書くことで、プログラムを自動生成してくれる機能もあります。以前説明したSpring Dataでは、メソッドを用意するだけで、クエリーを自動生成してくれる機能があると説明しました。
[CRUD操作のサンプル2] (再掲)

EmployeeRepository
public interface EmployeeRepository implements CrudRepository<Employee, String> {
    /** LastName(名字)で検索するメソッド */
    public List<Employee> findByLastName(String lastName);
}

 これは「findBy」の後に、検索のキーにしたい名称をメソッド名にしています。そういう規約がSpring Dataにはあるため、クエリーが自動生成されます。規約に沿っていない、複雑なクエリーを生成したいような場合は、クエリーを直接書くこともできます。


 「設定より規約」では、規約に沿っていない場合のみ、設定変更やソースコードを書きます。これにより、開発者の負担がとても減ります。そして、本来やるべきことにもっと集中できるようになります。

 Spring Bootを使うと、Springを使った開発で面倒な初期設定を省略できます。そのため、Javaの開発ではSpring Bootがよく使われています。

 投稿のやる気につながるため、記事の内容が少しでも良いと思ったら、いいねやフォローしてくださいね。

参考)下記の書籍

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?