獲取ApplicationContext

          一、簡單的用ApplicationContext做測試的話,獲得Spring中定義的Bean實例(對象).可以用:

          ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
          RegisterDAO registerDAO = (RegisterDAO)ac.getBean("RegisterDAO");

          如果是兩個以上:
          ApplicationContext ac = new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","dao.xml"});

          或者用通配符:
          ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:/*.xml");


          二、ClassPathXmlApplicationContext[只能讀放在web-info/classes目錄下的配置文件]和FileSystemXmlApplicationContext的區(qū)別

          classpath:前綴是不需要的,默認就是指項目的classpath路徑下面;
          如果要使用絕對路徑,需要加上file:前綴表示這是絕對路徑;

          對于FileSystemXmlApplicationContext:
          默認表示的是兩種:

          1.沒有盤符的是項目工作路徑,即項目的根目錄;
          2.有盤符表示的是文件絕對路徑.

          如果要使用classpath路徑,需要前綴classpath:

          public class HelloClient {

            protected static final Log log = LogFactory.getLog(HelloClient.class);

            public static void main(String[] args) {
              // Resource resource = new ClassPathResource("appcontext.xml");
              // BeanFactory factory = new XmlBeanFactory(resource);

              // 用classpath路徑
              // ApplicationContext factory = new ClassPathXmlApplicationContext("classpath:appcontext.xml");
              // ApplicationContext factory = new ClassPathXmlApplicationContext("appcontext.xml");

              // ClassPathXmlApplicationContext使用了file前綴是可以使用絕對路徑的
              // ApplicationContext factory = new ClassPathXmlApplicationContext("file:F:/workspace/example/src/appcontext.xml");

              // 用文件系統(tǒng)的路徑,默認指項目的根路徑
              // ApplicationContext factory = new FileSystemXmlApplicationContext("src/appcontext.xml");
              // ApplicationContext factory = new FileSystemXmlApplicationContext("webRoot/WEB-INF/appcontext.xml");

              // 使用了classpath:前綴,這樣,FileSystemXmlApplicationContext也能夠讀取classpath下的相對路徑
              // ApplicationContext factory = new FileSystemXmlApplicationContext("classpath:appcontext.xml");
              // ApplicationContext factory = new FileSystemXmlApplicationContext("file:F:/workspace/example/src/appcontext.xml");

              // 不加file前綴
              ApplicationContext factory = new FileSystemXmlApplicationContext("F:/workspace/example/src/appcontext.xml");
              IHelloWorld hw = (IHelloWorld)factory.getBean("helloworldbean");
              log.info(hw.getContent("luoshifei"));
            }
          }

          posted on 2014-12-26 17:06 Mr.lu 閱讀(884) 評論(0)  編輯  收藏


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


          網(wǎng)站導(dǎo)航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          <2014年12月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(2)

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 富蕴县| 报价| 方山县| 鄂托克旗| 东莞市| 金秀| 陇南市| 金乡县| 丹寨县| 准格尔旗| 侯马市| 滨海县| 临猗县| 松江区| 柳河县| 循化| 阿拉善右旗| 江陵县| 乌拉特前旗| 神木县| 黎川县| 东丽区| 江永县| 墨江| 仙桃市| 伊吾县| 邢台市| 都兰县| 武川县| 静安区| 蕲春县| 陇西县| 定西市| 苗栗市| 彩票| 习水县| 普安县| 城口县| 祁门县| 南安市| 尚义县|