正常在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前的斜杠,相对于调用类,共同的顶层路径。

参考:

时间: 07-25

java resources 路径_Java工程读取resources中资源文件路径问题相关推荐

  1. Java的marven工程读取resources文件,并打可执行的jar

    Java的maven工程读取resources文件,并打可执行的jar 文章目录 Java的maven工程读取resources文件,并打可执行的jar 如何读取resources文件 maven如何 ...

  2. thinkphp5中资源文件路径的使用

    2019独角兽企业重金招聘Python工程师标准>>> thinkphp5中资源文件路径的使用 在thinkphp5中资源文件的引用与thinkphp3已经不大一样,但也不麻烦 首先 ...

  3. java resources 目录_[Java] 在 jar 文件中读取 resources 目录下的文件

    注意两点: 1. 将资源目录添加到 build path,确保该目录下的文件被拷贝到 jar 文件中. 2. jar 内部的东西,可以当作 stream 来读取,但不应该当作 file 来读取. 例子 ...

  4. java读取xml路径问题_java 中读取xml 和绝对路径

    一.得到绝对路径 本人用到的不多,就列举常用的. 以上2种可读取固定配置文件可用得到绝对路径 1.System.getProperty("user.dir"); 这个东西局限性十分 ...

  5. java 输出文件到mac路径_Java 中几种获取文件路径的方式

    原标题:Java 中几种获取文件路径的方式 1. 前言 Java开发中我们经常要获取文件的路径,比如读取配置文件等等.今天我们就关于文件的路径和如何读取文件简单地探讨一下. 2. 文件的路径 文件的路 ...

  6. java获取项目中的路径_java中几种获取项目路径方式

    转自http://caodaoxi.iteye.com/blog/1234805 在jsp和class文件中调用的相对路径不同. 在jsp里,根目录是WebRoot 在class文件中,根目录是Web ...

  7. java 拦截所有路径_Java或Web中解决所有路径问题

    Java中使用的路径,分为两种:绝对路径和相对路径.归根结底,Java本质上只能使用绝对路径来寻找资源.所有的相对路径寻找资源的方法,都不过是一些便利方法.不过是API在底层帮助我们构建了绝对路径,从 ...

  8. java log输出到文件路径_Java - 配置log4j的日志文件路径 (附-获取当前类路径的多种方法)...

    1 日志路径带来的痛点 Java 项目中少不了要和log4j等日志框架打交道, 开发环境和生产环境下日志文件的输出路径总是不一致, 设置为绝对路径的方式缺少了灵活性, 每次变更项目路径都要修改文件, ...

  9. java文件乱码_Java文件读取乱码问题解决

    使用java读取磁盘文件内容容易出现乱码, 问题是由于java使用的编码和被读取文件的编码不一致导致的. 假设有一个test.txt的文本文件,文件内容为:"测试java读取中文字符串乱码问 ...

最新文章

  1. 深入理解Oracle RAC 12c 笔记
  2. #x开头的是什么编码呢。浏览器可以解释它。如中国等同与中文中国?
  3. 关于华为海思Hi35XX系列开发的思考与总结
  4. redis源码剖析(十五)——客户端思维导图整理
  5. 前端学习(2661):生命周期
  6. 排序函数(sort()、sorted()、argsort()函数)
  7. 可行性分析报告 模板
  8. codesmith for java_codesmith 入门介绍【转载】
  9. e当前登录环境异常。为了你的帐号安全,暂时不能登录web微信。你可以通过Windows
  10. 命令行运行coppeliasim(vrep)出现/usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.12‘ not found
  11. NotePad++ 删除重复行
  12. 农业物联网发展有哪些问题
  13. csgo 放置机器人_csgo怎么在确定位置放置一个bot?
  14. 聊聊订单系统的设计?看这篇就够了!
  15. RMAN 工具 恢复数据库
  16. 科协arduino四:蜂鸣器使用
  17. 集成电路布图设计专有权保护客体及内容确定
  18. matlab中dtft语法,DTFT的Matlab矩阵计算的理解
  19. mysql的下载与安装
  20. js逆向之常见的压缩和混淆

热门文章

  1. 2018南京网络赛L题 Magical Girl Haze(分层图+优先队列优化的dijkstra)
  2. ssm打印sql如何开启_mybatis怎么配置log4j打印出sql语句
  3. eval a string with null_try-with-resources--JAVA成长之路
  4. 题库练习4(提取不重复的数字、字符个数统计、数字颠倒、字符串反转)
  5. 域名系统DNS、文件传送协议FTP、动态主机配置协议DHCP、远程登录协议TELNET、电子邮件协议(SMTP/POP3/IMAP)、常用端口
  6. linux rs232触摸屏驱动程序,Linux下的触摸屏驱动
  7. php禁用了所有命令执行的函数 怎么搞,PHP通过bypass disable functions执行系统命令的方法汇总...
  8. 「比人还会聊天」百度PLATO对话机器人开放体验
  9. 带你了解『百度智能云发布云智一体的AI开发全栈模式』
  10. python get 下载 目录_python实现支持目录FTP上传下载文件的方法