Spring載入applicationContext.xml的幾種方式
阿新 • • 發佈:2019-02-07
1、利用ClassPathXmlApplicationContext可以從CLASSPATH中讀取xml檔案(最常見的使用方式)
- ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
- UserDao dao = (UserDao)context.getBean("userDao");
下面就可以使用介面的物件呼叫相應的方法了,這裡需要注意一點的是我們可以使用萬用字元來讀取多個xml檔案
new ClassPathXmlApplicationContext("applicationContext-*")
2、下面這種方式很少有人使用了(將多個配置檔案使用String陣列的形式表示)
-
ClassPathXmlApplicationContext resource = new ClassPathXmlApplicationContext(new String[]{"applicationContext-ibatis-oracle.xml","applicationContext.xml","applicationContext-data-oracle.xml"}); BeanFactory factory = resource; UserDao userDao = (UserDao) factory.getBean(
3、利用ClassPathResource讀取配置檔案
- Resource cr = new ClassPathResource("applicationContext.xml");
- BeanFactory bf=new XmlBeanFactory(cr);
- UserDao userDao = (UserDao)bf.getBean("userDao");
4、利用FileSystemResource讀取
-
Resource rs = new FileSystemResource("D:/tomcat/webapps/wiscom/
- WEB-INF/classes/applicationContext.xml");
- BeanFactory factory = new XmlBeanFactory(rs);
- UserDao userDao = (UserDao )factory.getBean("userDao");
使用FileSystemResource讀取xml檔案需要注意的是:配置檔案必須放在project直接目錄下,或是寫明絕對路徑,否則就會丟擲找不到檔案的異常.
5、利用FileSystemXmlApplicationContext讀取
- String[] path={"WebRoot/WEB-INF/applicationContext.xml",
- "WebRoot/WEB-INF/applicationContext_task.xml"};
- ApplicationContext context = new FileSystemXmlApplicationContext(path);
上面這幾種是在專案中可能用到的幾種載入方式,其他的方式就暫時也不去理會啦~~