Spring Boot中路徑及配置檔案讀取問題
阿新 • • 發佈:2018-12-05
編譯時src/main/java中*.java檔案會被編譯成*.class檔案,在classpath中建立對應目錄及class檔案
src/main/resources目錄中的檔案會被複制到classpath目錄中
import java.io.InputStream; import java.net.URL; import org.springframework.boot.CommandLineRunner; import org.springframework.stereotype.Component; @Componentpublic class Test implements CommandLineRunner { public void run(String... args) throws Exception { //當前專案根目錄 System.out.println(System.getProperty("user.dir")); //classpath目錄, 一般是根目錄下/target/classes目錄 URL url = getClass().getClassLoader().getResource(""); System.out.println(url.getPath());//讀取根目錄下/target/classes/test/settings.properties檔案,即讀取src/main/resources/test/settings.properties檔案 InputStream inputStream = getClass().getClassLoader().getResourceAsStream("test/settings.properties"); System.out.println(inputStream); } }