風行天下

          JAVA太極
          posts - 4, comments - 10, trackbacks - 0, articles - 55
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          jakarta commons configuration 學習筆記

          Posted on 2005-04-01 10:54 風太少 閱讀(448) 評論(0)  編輯  收藏

          Runtime Dependencies

          運行時需要的一些組件包: 依存關系:
          1. Core
            • commons collections
            • commons lang
          2. ConfigurationFactory
            • commons logging
            • commons digester
          3. DatabaseConfiguration
            • commons logging
          4. XMLConfiguration, HierarchicalXMLConfiguraion
            • xml apis or xerces
          5. JNDIConfiguration
            • commons logging
          6. ConfigurationDynaBean
            • commons beanutils
            • commons logging

          用ConfigurationFactory 進行配置

          portal/
          |--src/
          |--WEB-INF/
          |----config.xml
          |----properties/
          |------usergui.properties
          |----classes/
          |------ConfigurationFactoryTest.class

          ConfigurationFactory 提供了兩種方式用于指定配置文件的位置:
          • setConfigurationURL(URL)
          • setConfigurationFileName(String)
          使用factory.setConfigurationURL(URL) 方法指定配置文件
          ConfigurationFactory factory = new ConfigurationFactory();
          URL url = new File("WEB-INF/config.xml").toURL();
          factory.setConfigurationURL(url);
          Configuration config = factory.getConfiguration();
          System.out.println(config.getString("colors.background"));
          此時config.xml 中其他配置文件的聲明要用相對于config.xml 的路徑
          <?xml version="1.0" encoding="ISO-8859-1" ?>
          <configuration>
            <properties fileName="properties/usergui.properties"/>
            <!--或 fileName="./properties/usergui.properties"-->
          </configuration>

          使用factory.setConfigurationFileName(String) 方法指定配置文件
          ConfigurationFactory factory = new ConfigurationFactory();
          factory.setConfigurationFileName("WEB-INF/config.xml");
          Configuration config = factory.getConfiguration();
          System.out.println(config.getString("colors.background"));
          此時config.xml 中其他配置文件的聲明要用相對于項目的根目錄的路徑:
          <?xml version="1.0" encoding="ISO-8859-1" ?>
          <configuration>
            <properties fileName="WEB-INF/properties/usergui.properties"/>
          </configuration>

          !注:如果配置文件的路徑填寫不正確的話就會遇到如下兩個Exception
          • org.apache.commons.configuration.ConfigurationFactory.getConfiguration(ConfigurationFactory.java:135) - Exception caught opening stream to URL 表明找不到config.xml
          • org.apache.commons.digester.Digester.endElement(Digester.java:1069) - End event threw exception java.lang.reflect.InvocationTargetException 表明找不到config.xml 中聲明的其他配置文件

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 南阳市| 施甸县| 游戏| 北海市| 宜阳县| 紫云| 张家界市| 梨树县| 长春市| 灵川县| 湄潭县| 珲春市| 惠来县| 恩平市| 类乌齐县| 靖西县| 固始县| 肥西县| 铜山县| 交口县| 栾城县| 徐水县| 古浪县| 黄骅市| 桃园县| 新田县| 枞阳县| 静乐县| 西畴县| 哈尔滨市| 宣武区| 南召县| 浪卡子县| 白山市| 崇阳县| 志丹县| 安阳县| 江陵县| 石阡县| 加查县| 石家庄市|