DBクレデンシャルを動的にロードする場合。 Tomcatがcontext.xml
をロードしている間のみ可能です。 1回(Tomcatは起動時に環境変数を1回だけ読み取るため)。
実行時に、contxt.xml
関連するWebアプリケーションのリロードを変更します。 Tomcatは再起動されません。
したがって、コツは、上記の${catalina.base}
のように、DBクレデンシャルをJVMパラメーター/引数として配信することです。
3つの段階があります:
-
宣言して値を環境変数に設定します:
export DB_CREDENTIALS='*****'
適切な場所は、Tomcatのユーザーログインスクリプト
.bash_profile
です。 、またはTomcat環境setenv.sh
-
環境変数のJVMパラメーター(システム変数)を作成します。次の行を
setenv.sh
に追加します。 最後の行の前。-Denvironment.db.credentials=${DB_CREDENTIALS} \
-
context.xmlで宣言されたJVMパラメーターを使用/呼び出します。例:
url="jdbc:postgresql://**********:****/${environment.db.credentials}"