如何读取maven项目中的resources
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何读取maven项目中的resources相关的知识,希望对你有一定的参考价值。
建立一个maven web项目,project-name/src/main下面有3个目录,java、resources、webapp
java中存放java源代码,package等
resources中存放一些个资源文件,比如properties文件等,编译好会自动将这里边的文件复制到target/classes里去
webapp就相当于是我们的web项目的WebContent目录
下面我们来看一下如何读取resources里的文件
Properties prop = new Properties(); try { prop.load(this.getClass().getResourceAsStream("/kafka-http.properties")); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }
java.lang.Class.getResourceAsStream(String name)这个方法。
关键在于后面的路径的写法:
"kafka-http.properties" 是去当前这个class文件同一个目录下找(也即是当前这个java文件同一个目录下必须有这个properties文件,才能复制到对应的class目录)
"/kafka-http.properties" 是去整个项目的classes目录下去找,也即是上面提到过的target/classes
"/kafka-http.properties" 是去整个项目的classes目录下去找,也即是上面提到过的target/classes
所以如果将属性文件放到src/main/resources里,那么要用Class.getResourceAsStream("/kafka-http.properties")来读取。
以上是关于如何读取maven项目中的resources的主要内容,如果未能解决你的问题,请参考以下文章
读取Maven项目下resources目录下的配置文件(properties为例)
Spring Boot中如何读取resources目录下的文件
maven的src/test/resources中的配置文件怎样读取?