1

これをアプリケーションに実装する方法がわかりません。

アプリの管理担当者が Root_Dir の場所を選択する xml (またはファイル) が必要です。

現在は次のようにハードコーディングされてC:\MyAppRootDirいますが、管理者がいつでもこのパスを変更できるようにしたいと考えています。

何か案は?

乾杯

4

1 に答える 1

4

Web アプリケーションに外部構成を提供するには、いくつかの方法があります。

  1. プロパティ ファイルを作成し、それを 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
    
  2. VM 引数を Tomcat 起動スクリプトに追加します。

    -Dconfig.xmlrootdir=C:\MyAppRootDir
    

    次のように利用できます。

    String xmlrootdir = System.getProperty("config.xmlrootdir");
    // ...
    
  3. 環境変数を設定します。

    SET CONFIG_XMLROOTDIR=C:\MyAppRootDir
    

    次のように利用できます。

    String xmlrootdir = System.getenv("CONFIG_XMLROOTDIR");
    // ...
    
于 2012-05-30T17:09:13.743 に答える