假設資源文件如下
一、獲取某個具體文件資源時,可用以下兩種方式:
1.直接獲取輸入流:
InputStream resourceAsStream = getClass().getResourceAsStream("/templates/addAgentAccount.bpmn");//開頭必須帶斜槓
2.獲取輸入流、文件名等等
ClassPathResource classPathResource = new ClassPathResource(
"/templates/addAgentAccount.bpmn");//開頭有無斜槓都可以
System.out.println(classPathResource.getInputStream());
System.out.println(classPathResource.exists());
System.out.println(classPathResource.getFilename());
System.out.println(classPathResource.contentLength());
System.out.println(classPathResource.isFile());
二、獲取某目錄下所有資源:(注意,路徑前要帶上classpath:且後面帶上通配符)
Resource[] resources = new PathMatchingResourcePatternResolver()
.getResources("classpath:templates/*");
三、獲取Jar包所在目錄
public static String TARGET_PATH = new ApplicationHome(getClass()).getSource()
.getParentFile().toString();