こんにちは!
株式会社情創 技術開発局
三度の飯より焼肉が好きな@YAKINIKUです!
今回はapplication.propertiesについて解説します。
#application.propertiesとは
application.propertiesとはSpring Bootで用意されている
デフォルトの設定ではなく環境独自の設定を行うためのファイルです。
設定可能な項目は以下を参考にしてください。
https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html
#開発環境と本番環境
共通環境であるapplication.propertiesの他に
開発環境用と本番環境用のファイルを作成することができます。
今回は
application-dev.properties、application-prd.properties
という名前で作成します。
この2つを使うことで開発環境と本番環境でそれぞれ
違う設定を使用することができます。
application-dev.propertiesが開発環境用、
application-prd.propertiesが本番環境用のファイルとなります。
開発環境を使用する際には、
application.propertiesにて
spring.profiles.active=dev
本番環境の際は、
spring.profiles.active=prd
と記述する必要があります。
今回はdev、prdとしていますが。この部分は他の文字でも可能です。
ただしapplication.propertiesで、
spring.profiles.active=prdと記述して
このprd部分と、
ファイル名application-prd.properties
のprd部分とで連携しているため
この2つの記述を合わせる必要があります。
#開発環境(dev)
下記のように記述することで、キャッシュを無効化しておきます。
spring.messages.cache-seconds=0
spring.thymeleaf.cache=false
spring.velocity.cache = false
他にはSpring BootにあるActuatorの設定を編集します。
Actuatorは様々な情報がREST APIで提供されているので、
使いやすいのですが、
外部から情報を取得されてしまったりするので
そういったことが無いように下記のように設定します。
management.add-application-context-header=false
このように記述することで、ヘッダに付与される
情報を公開している箇所を無効化することができます。
#本番環境(prd)
本番環境では上記で説明した、actuatorを無効化するので、
endpoints.enabled=false
と記述します。
またキャッシュを有効にするので、
開発環境では無効にした下記を有効にします。
spring.messages.cache-seconds=-1
spring.thymeleaf.cache=true
spring.velocity.cache = true
主な記述の説明は以上になります。
その他にどのような設定が可能か知りたい方は、
一番最初に貼ったURLを参照ください。
最後まで読んでいただきありがとうございました。
それではみなさん、こんにちはこんばんはさようなら!