はじめに
Spring Boot のプロジェクトを開くと必ず目にする
application.yml。
「設定を書くファイルらしいけど、どこまで書けるの?」
「yml と properties の違いは?」
「インデントでエラーになるのが怖い…」
そんな気持ちになる方も多いと思います。
この記事では、application.yml の基本を
やさしく・実務で役立つ形 で整理していきます。
まずは実際の yml を見て、そこから少しずつ理解していきましょう。
まずはコードを確認
server:
port: 8081
spring:
datasource:
url: jdbc:mysql://localhost:3306/sample
username: user
password: passこのように、
階層構造で設定を書いていくファイル
それが application.yml です。
コードのしくみを解説
application.yml とは
一言でいうと、
Spring Boot の設定をまとめて書くためのファイル
です。
- ポート番号
- DB 接続情報
- ログ設定
- 独自の設定値
- 外部 API のキー
など、アプリの動作に関わる設定をここに書きます。
yml の特徴
- 階層構造がわかりやすい
- インデントで構造を表現する
- コロン(:)で値を指定する
- 配列も書ける
properties よりも読みやすく、
Spring Boot では yml を使う人が多いです。
よく使う設定を整理
サーバー設定
server:
port: 8081ポート番号の変更など。
DB 接続設定
spring:
datasource:
url: jdbc:mysql://localhost:3306/sample
username: user
password: passログレベル
logging:
level:
root: INFO
com.example.demo: DEBUGプロファイルごとの設定
spring:
profiles:
active: devapplication-dev.yml を読み込む設定です。
あわせて知っておきたいポイント
yml はインデントが命
スペースの数がずれるとエラーになります。
タブではなくスペースを使うのが基本です。
配列も書ける
my:
list:
- apple
- banana
- orange独自の設定も書ける
app:
title: My Application
version: 1.0後で @ConfigurationProperties で読み込めます。
application.yml は 1 つとは限らない
- application.yml
- application-dev.yml
- application-prod.yml
など、環境ごとに分けるのが実務では一般的です。
使うときに気をつけたいこと
インデントのずれに注意
yml のエラーは見つけにくいので、
VSCode や IntelliJ の補完を活用すると安心です。
パスワードを直書きしない
本番環境では
- 環境変数
- Vault
- AWS Parameter Store
などを使うのが安全です。
設定が増えすぎたら分割する
profiles を使って
dev / test / prod
に分けると管理しやすくなります。
まとめ
application.yml は、
Spring Boot の設定をまとめて書くためのファイル
です。
- 階層構造で読みやすい
- DB やログなどの設定をまとめられる
- プロファイルで環境ごとに分けられる
難しく聞こえますが、
「アプリの設定を整理して書く場所」
と理解できれば十分です。

application.yml を理解すると、
Spring Boot の“設定の世界”が一気にクリアになります。
あなたの開発が、今日より少しだけ楽になりますように。

インデントで世界が決まるなんて…yml さん、繊細でかわいいね。

コメント