zoukankan      html  css  js  c++  java
  • Spring Boot中如何读取resources目录下的文件

          在Java编码过程中,我们常常希望读取项目内的配置文件,按照Maven的习惯,这些文件一般放在项目的src/main/resources下。因此,我们把合同的PDF模板存放于resources/template/test.pdf,以作测试用例,下面提供两种读取方式,它们分别在windows和Linux环境(linux下jar包)都可以正常运行。

    方法一 ClassPathResource

    String pdfFilePath = "template/test.pdf";
    Resource resource = new ClassPathResource(pdfFilePath);

         通过如下方法可以转Resource换成InputStream :

    InputStream is = resource.getInputStream();

    方法二 getContextClassLoader

    InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream(pdfFilePath);

    测试用例

         public static void main(String[] args) {
            try {
                String pdfFilePath = "template/test.pdf";
                Resource resource = new ClassPathResource(pdfFilePath);
                System.out.println( resource.getURI() + " -- ****** path = ");
     
                if (resource.isReadable()) {
                    //每次都会打开一个新的流
                    InputStream is = resource.getInputStream();
                    System.out.println("方法一 " + is.available());
                }
                InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream(pdfFilePath);
                System.out.println("方法二 " + inputStream.available());
            } catch (IOException e) {
                e.printStackTrace();
            }
     
        }

           如果有其它读取的办法,欢迎留言。

  • 相关阅读:
    PowerDesigner中如何添加约束
    C#静态构造函数总结
    PendingIntent与Intent的区别
    常用编码总结
    操作系统的版本概况
    如何制作一寸、二寸、六寸证件照片
    datagridview使用tooltip控件显示单元格内容
    OpenGL ES之Must use a native order direct Buffer解决方案
    Exception.InnerException 属性的使用
    Matrix使用的分析
  • 原文地址:https://www.cnblogs.com/east7/p/12208114.html
Copyright © 2011-2022 走看看