zoukankan      html  css  js  c++  java
  • 路径

    Java工程读取resources中资源文件路径问题

    正常在Java工程中读取某路径下的文件时,可以采用绝对路径和相对路径,绝对路径没什么好说的,相对路径,即相对于当前类的路径。在本地工程和服务器中读取文件的方式有所不同,以下图配置文件为例。

    本地读取资源文件

    java类中需要读取properties中的配置文件,可以采用文件(File)方式进行读取:

    1 File file = new File("src/main/resources/properties/basecom.properties");
    2 InputStream in = new FileInputStream(file);

    当在eclipse中运行(不部署到服务器上),可以读取到文件。

    服务器(Tomcat)读取资源文件

    当工程部署到Tomcat中时,按照上边方式,则会出现找不到该文件路径的异常。经搜索资料知道,Java工程打包部署到Tomcat中时,properties的路径变到顶层(classes下):

    并且,此时读取文件需要采用流(stream)的方式读取,如下:

    1 InputStream in = this.getClass().getResourceAsStream("/properties/basecom.properties");

     其中properties前的斜杠,相对于调用类,共同的顶层路径。

    分布式项目,src/main/resources 会在指向打war包的那个项目,manager。

    用java代码对src/main/resources下的配置文件进行更改,对应的编译文件,也就是classes下的文件也会发生修改。

    参考:

    Resource from src/main/resources not found after building with maven        

    [Java] 在 jar 文件中读取 resources 目录下的文件     

  • 相关阅读:
    UOJ168. 【UR #11】元旦老人与丛林
    luogu3308,LOJ 2196 [SDOI2014]LIS
    CF1349F2. Slime and Sequences (Hard Version)
    6210. wsm
    欧拉数学习小记
    CF1508F. Optimal Encoding
    CF1508C. Complete the MST
    联合省选2021 游记
    一. Docker介绍
    Elasticsearch
  • 原文地址:https://www.cnblogs.com/shenzhichipingguo/p/9318227.html
Copyright © 2011-2022 走看看