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}"