隨筆 - 6  文章 - 129  trackbacks - 0
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(14)

          隨筆檔案(6)

          文章分類(467)

          文章檔案(423)

          相冊

          收藏夾(18)

          JAVA

          搜索

          •  

          積分與排名

          • 積分 - 828831
          • 排名 - 49

          最新評論

          閱讀排行榜

          評論排行榜


          Spring可以通過指定classpath*:與classpath:前綴加路徑的方式從classpath加載文件,如bean的定義文件.classpath*:的出現是為了從多個jar文件中加載相同的文件.classpath:只能加載找到的第一個文件.

          比如 resource1.jar中的package 'com.test.rs' 有一個 'jarAppcontext.xml' 文件,內容如下:

          <bean name="ProcessorImplA" class="com.test.spring.di.ProcessorImplA" />

          resource2.jar中的package 'com.test.rs' 也有一個 'jarAppcontext.xml' 文件,內容如下:

          <bean id="ProcessorImplB" class="com.test.spring.di.ProcessorImplB" />

           

          通過使用下面的代碼則可以將兩個jar包中的文件都加載進來

          ApplicationContext ctx = new ClassPathXmlApplicationContext(
                          "classpath*:com/test/rs/jarAppcontext.xml");

           

          而如果寫成下面的代碼,就只能找到其中的一個xml文件(順序取決于jar包的加載順序)

          ApplicationContext ctx = new ClassPathXmlApplicationContext(
                          "classpath:com/test/rs/jarAppcontext.xml");

           

          classpath*:的使用是為了多個component(最終發布成不同的jar包)并行開發,各自的bean定義文件按照一定的規則:package+filename,而使用這些component的調用者可以把這些文件都加載進來.

           

          classpath*:的加載使用了classloader的 getResources() 方法,如果是在不同的J2EE服務器上運行,由于應用服務器提供自己的classloader實現,它們在處理jar文件時的行為也許會有所不同。 要測試 classpath*: 是否有效,可以用classloader從classpath中的jar文件里加載文件來進行測試: getClass().getClassLoader().getResources("<someFileInsideTheJar>") 。(上面的例子是在sun的jre中運行的狀態)

           

          來自:http://blog.csdn.net/kkdelta/article/details/5507799




          posted on 2011-10-14 11:58 Ke 閱讀(765) 評論(0)  編輯  收藏 所屬分類: spring
          主站蜘蛛池模板: 美姑县| 延安市| 泰和县| 仁化县| 广元市| 应城市| 巴里| 新营市| 吕梁市| 曲沃县| 行唐县| 隆化县| 鹤岗市| 彰武县| 鄄城县| 米脂县| 梓潼县| 通海县| 新蔡县| 黔东| 建水县| 临沭县| 榆社县| 普宁市| 新蔡县| 长武县| 哈尔滨市| 澎湖县| 涟源市| 镇巴县| 方山县| 兖州市| 呈贡县| 苗栗县| 怀仁县| 牡丹江市| 永年县| 井陉县| 夏河县| 马关县| 广东省|