【初心者向け】Spring Bootの基礎をざっくり解説

こんにちは、うっしーです。
今回は Spring Boot を学び始めた方に向けて、以下の基本ポイントを「ざっくり」わかりやすく解説していきます。

  • Spring Bootってそもそも何?
  • プロジェクト構成の中身ってどうなってるの?
  • @SpringBootApplicationって何者?
  • .yml.propertiesの違いって?

「本を読んだけど、正直よくわからなかった」
「とりあえず手を動かしながら理解したい」

という方にとって、入り口となるような記事になればうれしいです。


Spring Bootとは?ざっくり概要

Spring Bootとは、Javaの人気フレームワーク「Spring」をもっとシンプルに、もっと早く動かせるようにした軽量な開発フレームワークです。

主な特徴

  • 最小構成でアプリを起動できる
  • TomcatなどのWebサーバが組み込み済み
  • XML設定がほぼ不要。コードで完結できる
  • main()メソッドで普通のJavaアプリのように実行可能

これにより、「WebアプリやAPIを短時間で立ち上げたい」という現場において非常に重宝されているのがSpring Bootです。


プロジェクト構成の基本

Spring Bootでアプリを作成すると、以下のような構成になります:

src ├── main │ ├── java │ │ └── com.example.demo │ │ └── DemoApplication.java │ └── resources │ ├── application.yml(または .properties) │ ├── static(画像やCSSなどの静的ファイル) │ └── templates(HTMLテンプレートなど) └── test └── java(テストコード)

よくあるフォルダの意味

  • main/java:Javaのソースコードを格納する場所
  • resources:HTMLテンプレートや設定ファイルなど。コンパイル後に読み込まれる
  • templates:ThymeleafなどのHTMLエンジンを使う場合に使われる
  • static:画像・CSS・JSなど静的ファイルを置く場所

ポイント:resources配下のファイルは、クラスパスに自動的に含まれるため、設定ファイルやテンプレートの読込がしやすくなります。


@SpringBootApplication の正体

Spring Bootアプリのエントリーポイント(起動クラス)には、以下のようなコードがよく書かれています:

@SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }

この @SpringBootApplication というアノテーションには、実は3つの重要なアノテーションが合体しています: 含まれているアノテーション 役割 @Configuration 設定クラスであることを示す @EnableAutoConfiguration 自動構成を有効にする @ComponentScan 同パッケージ配下のクラスを自動で読み込む

→ このアノテーションを付けるだけで、設定・構成・スキャンの準備がすべて整うという、まさに“玄関”のような存在です。


application.yml と .properties の使い分け

Spring Bootでは、アプリの動作設定を application.yml または application.properties に記述します。

どちらも同じ目的で使えますが、書き方と見やすさが違います

比較表

項目 .properties.yml 書式 キー=値 ネストされた階層構造 読みやすさ 単純でフラット 複雑な構成に強い 例 server.port=8080 `server: port: 8080`

どっちを使えばいい?

  • 簡単な設定だけなら .properties が手軽
  • 本番環境や複雑な構成なら .yml の方が視覚的に把握しやすい

実務では .yml が主流ですが、チームによって好みが分かれるところです。


まとめ

  • Spring Bootは、Javaアプリを高速に立ち上げられるフレームワーク
  • プロジェクトには特有のフォルダ構成がある(resourcesなど)
  • @SpringBootApplication は3つの重要アノテーションの複合体
  • 設定ファイルは .properties または .yml を用途に応じて選択

次回は、@Component@Service@Repository の違いや使いどころを掘り下げていきます。
ここまで読んでくださりありがとうございました!

コメント

タイトルとURLをコピーしました