1.はじめに
開発・本番環境リリース時に同じソースコード(war)をリリースするためのメモ書きです。
2.環境
- 開発環境
- Java 8
- SpringBoot
- DB:SQLServer
- サーバ(本番:1台、検証:1台)
- OS:WindowsServer
- apatch-tomcat
- apatch
3.作業内容
Spring Bootは、アプリケーションプロパティファイル(application.properties)を読み込む仕組みになっています。アプリケーションプロパティファイルを指定しない限りデフォルトのファイル(application.properties)を読み込みます。今回はアプリケーションプロパティファイルを本番環境・検証環境を別々に作成&指定することで接続先を動的に変更できるようにする。
3-1. アプリケーションプロパティの作成
本番環境(pro)と検証環境(st)環境を作成する。各プロパティファイル名称の末尾にproやstをセットするだけで完了となる。
application-pro.properties
##本番DBの接続情報を設定
spring.datasource.primary.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.primary.url=jdbc:sqlserver://000.000.000.000:1433;databaseName=ProDB
spring.datasource.primary.username=name
spring.datasource.primary.password=password
application-st.properties
##検証DBの接続情報を設定
spring.datasource.primary.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.primary.url=jdbc:sqlserver://000.000.000.000:1433;databaseName=StDB
spring.datasource.primary.username=name
spring.datasource.primary.password=password
3-2. サーバ設定
各サーバの「コントロールパネル>システム>システムの詳細設定>環境変数」よりシステム変数"SPRING_PROFILES_ACTIVE"を登録する(本番:pro、検証:st)。
#4 .おわりに
今回はDBの接続のみを例にしたが、各プロパティファイルで記載する内容を変えることで様々な設定を変更することができる。