假设资源文件如下
一、获取某个具体文件资源时,可用以下两种方式:
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();