spring加載ApplicationContext.xml的四種方式

spring 中加載xml配置文件的方式,好像有4種, xml是最常見的spring 應用系統配置源。Spring中的幾種容器都支持使用xml裝配bean,包括:

    XmlBeanFactory , 
    ClassPathXmlApplicationContext , 
    FileSystemXmlApplicationContext , 
    XmlWebApplicationContext 

一:XmlBeanFactory 引用資源

    Resource resource = new ClassPathResource("appcontext.xml"); 
    BeanFactory factory = new XmlBeanFactory(resource); 

二:ClassPathXmlApplicationContext 編譯路徑

   ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
   ApplicationContext ac = new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","dao.xml"});

   ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:/*.xml");

    ApplicationContext factory=new ClassPathXmlApplicationContext("classpath:appcontext.xml"); 
    ApplicationContext factory=new ClassPathXmlApplicationContext("appcontext.xml");   // src目錄下的 
    ApplicationContext factory=new ClassPathXmlApplicationContext("conf/appcontext.xml");   // src/conf 目錄下的 
    ApplicationContext factory=new ClassPathXmlApplicationContext("file:G:/Test/src/appcontext.xml"); 
    RegisterDAO registerDAO = (RegisterDAO)ac.getBean("RegisterDAO");

三 : 用文件系統的路徑

 ApplicationContext factory=new FileSystemXmlApplicationContext("src/appcontext.xml"); //使用了  classpath:  前綴,作為標志,  這樣,FileSystemXmlApplicationContext 也能夠讀入classpath下的相對路徑 
    ApplicationContext factory=new FileSystemXmlApplicationContext("classpath:appcontext.xml"); 
    ApplicationContext factory=new FileSystemXmlApplicationContext("file:G:/Test/src/appcontext.xml"); 
    ApplicationContext factory=new FileSystemXmlApplicationContext("G:/Test/src/appcontext.xml"); 

四: XmlWebApplicationContext 是專為Web工程定制的。

    ServletContext servletContext = request.getSession().getServletContext(); 
    ApplicationContext ctx =   
    WebApplicationContextUtils.getWebApplicationContext(servletContext ); </pre>

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

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容