例如,AppService需要读取这个文件,通常情况下,我们需要写很多繁琐的代码,主要是为了定位文件,打开InputStream。

    Spring提供了一个org.springframework.core.io.Resource(注意不是javax.annotation.Resource),它可以像String、一样使用@Value注入:

    注入Resource最常用的方式是通过classpath,即类似classpath:/logo.txt表示在classpath中搜索文件,然后,我们直接调用Resource.getInputStream()就可以获取到输入流,避免了自己搜索文件的代码。

    但使用classpath是最简单的方式。上述工程结构如下:

    使用Maven的标准目录结构,所有资源文件放入src/main/resources即可。

    使用Spring的Resource注入文件,然后读取该配置文件。

    Spring提供了Resource类便于注入资源文件。

    最常用的注入是通过classpath以classpath:/path/to/file的形式注入。

    使用Resource - 图1