spring中ClassPathXmlApplication和FileSystemXmlApplicationContext使用區別


  

     ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
     DataSource ds = (DataSource) ac.getBean("ds");
     System.out.println(ds);

ClassPathXmlApplicationContext中的參數默然去classPath路徑下找.可以加classpath:applicationContext.xml.

如果多個xml文件,可以new String數組

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

如果使用文件路徑也可以

    ApplicationContext ac = new ClassPathXmlApplicationContext("file:F:\\lee\\workspace\\struts2\\oa\\src\\applicationContext.xml");

    注意:如果死絕對路徑,file:是必須有的.

ClassPathXmlApplicationContext和FileSystemXmlApplicationContext的使用區別

 FileSystemXmlApplicationContext的參數中如果使用絕對路徑的話,可以加file前綴,也可以不加file前綴,這就是和classpahtXmlApplicaitonContext的區別之一

   ApplicationContext ac = new FileSystemXmlApplicationContext("file:F:\\lee\\workspace\\struts2\\oa\\src\\applicationContext.xml");

   ApplicationContext ac = new FileSystemXmlApplicationContext("F:\\lee\\workspace\\struts2\\oa\\src\\applicationContext.xml"); 

第二個也是可以的

如果要到class路徑去尋找的話,就必須加上classpath

   ApplicationContext ac = new FileSystemXmlApplicationContext("classpath:applicationContext.xml");

如果不絕對的路徑,也不指定classpath,它默認在項目的路徑下找

  ApplicationContext ac = new FileSystemXmlApplicationContext("src/applicationContext.xml");

 ApplicationContext ac = new FileSystemXmlApplicationContext("webcontent/applicationContext.xml");

而且路徑不區分大小寫

 總結:ClassPathXmlApplicationContext默認是加載classpath路徑下的配置文件,而FileSystemXmlApplicationContext默認是加載文件系統的配置文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM