背景:想通过自定义的resource资源文件的形式,配置链接mysql表的基础信息。
设计到函数getResourceAsStream(String Path)的使用,还有properties 文件的编写
具体实现如下
1、properties如何编写呢?
配置文件.png
2、在代码中如何调用呢?
Java代码中具体展示与使用方式.png
3、Idea资源文件如何配置呢?
Idea资源文件如何配置.png
总结:
在java项目中会经常用到getResourceAsStream这个函数获取一些配置文件,但是怎样正确使用这个函数呢?
getResourceAsStream(String path)这个函数的参数是一个路径,但是这个路径应该怎么填?使用该函数的难点也就在此。
其实只要记住一个关键点,getResourceAsStream这个函数寻找文件的起点是JAVA项目编译之后的根目录,比如一般maven项目编译之后根目录都是target/classes这个文件
Properties 和 getResourceAsStream获取资源文件的时候的几种情况:
// 方法: 下面第一种用绝对路径的形式获取资源文件
is=new FileInputStream("/Users/XXX/IdeaProjects/sendemail/target/classes/Common/environment.properties"); // 这种方式需要复制资源文件的绝对路径
// 方法:Class.getClassLoader.getResourceAsStream(String path) 获取资源文件的方式:
is=this.getClass().getClassLoader().getResourceAsStream("Common/environment.properties");// 这个使用的是所在类的 classpath 路径, copy from resource root 即可
is= ConfigUtil.class.getClassLoader().getResourceAsStream("Common/environment.properties");
// 方法:Class.getResourceAsStream(String path) 获取资源文件,这里的path要用"/"开头
is=this.getClass().getResourceAsStream("/Common/environment.properties");