これをアプリケーションに実装する方法がわかりません。
アプリの管理担当者が Root_Dir の場所を選択する xml (またはファイル) が必要です。
現在は次のようにハードコーディングされてC:\MyAppRootDir
いますが、管理者がいつでもこのパスを変更できるようにしたいと考えています。
何か案は?
乾杯
これをアプリケーションに実装する方法がわかりません。
アプリの管理担当者が Root_Dir の場所を選択する xml (またはファイル) が必要です。
現在は次のようにハードコーディングされてC:\MyAppRootDir
いますが、管理者がいつでもこのパスを変更できるようにしたいと考えています。
何か案は?
乾杯
Web アプリケーションに外部構成を提供するには、いくつかの方法があります。
プロパティ ファイルを作成し、それを Web アプリケーションのランタイム クラスパスがカバーするパスの 1 つに配置するか、そのパスを Web アプリケーションのランタイム クラスパスに追加します。
例えば/path/to/config.properties
こんな内容で
xmlrootdir=C:\MyAppRootDir
クラスローダーで取得できます。
Properties properties = new Properties();
properties.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("config.properties"));
String xmlrootdir = properties.getProperty("xmlrootdir");
// ...
質問履歴に基づいて、Tomcat を使用/ターゲットにしています。shared.loader
管理者は、そのエントリを編集して/conf/catalina.properties
、このプロパティ ファイルが配置されているフォルダを指すことができます。
shared.loader=/path/to
VM 引数を Tomcat 起動スクリプトに追加します。
-Dconfig.xmlrootdir=C:\MyAppRootDir
次のように利用できます。
String xmlrootdir = System.getProperty("config.xmlrootdir");
// ...
環境変数を設定します。
SET CONFIG_XMLROOTDIR=C:\MyAppRootDir
次のように利用できます。
String xmlrootdir = System.getenv("CONFIG_XMLROOTDIR");
// ...