ClassPathXmlApplicationContext和FileSystemXmlApplicationContext區別


ClassPathXmlApplicationContext
默認文件路徑是src下那一級
classpath:和classpath*:的區別:
classpath: 只能加載一個配置文件,如果配置了多個,則只加載第一個
classpath*: 可以加載多個配置文件,如果有多個配置文件,就用這個

FileSystemXmlApplicationContext
這個類,默認獲取的是項目路徑,默認文件路徑是項目名下一級,與src同級。
如果前邊加了file:則說明后邊的路徑就要寫全路徑了,就是絕對路徑
file:D:/workspace/applicationContext.xml


通過在spring加載的時候直接加載properties文件
<context:property-placeholder location="file:D://property/dinpay.ogg.properties" />

 

System.out.println(System.getProperty("user.dir"));

 

Linux和Windows系統識別不一致

如加載配置文件有區別

   private static AbstractApplicationContext appContext = null;
    private static final String XML_EXPRESSION = "classpath*:applicationContext*.xml";

    static {
        // 后續來讀取命令中的conf 例如 java -Dconf=conf/*.xml -classpath .:lib/*
        if (System.getProperty("conf") != null) {
            appContext = new FileSystemXmlApplicationContext(System.getProperty("conf").concat("/applicationContext-sync.xml"));
        } else {
            appContext = new ClassPathXmlApplicationContext(XML_EXPRESSION);
        }
    }

 


免責聲明!

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



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