博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java读取其他jar包里的配置文件
阅读量:5129 次
发布时间:2019-06-13

本文共 838 字,大约阅读时间需要 2 分钟。

最近要做个东西,需要自己控制数据库的事物,项目封装的框架,实在是提不起去阅读的兴趣,

就想直接去读框架的底层实现里面的数据连接的配置文件(如:Url,port,username,password等),

使用JDBC创建数据连接,拿到Connection后,事物就好办了。

找到在一个A.jar包里面的根目录,有配置文件B.properties,里面有需要的配置。

难点就来了,Properties可以加载src下面的properties文件,直接prop.load(this.getClass().getResourceAsStream("/B.properties"))就可以,

那在其他的jar包下面的properties文件的路径怎么表示???

经过测试发现,第三方jar包的根目录和src是同一个目录(当然,要这个jar包在classpath里面才行( ⊙ o ⊙ )啊)。

我的测试是在eclipse里面进行的,在项目的classpath里面加入A.jar包,jar包里面只有一个B.properties文件

在测试代码中,直接使用prop.load(this.getClass().getResourceAsStream("/B.properties")) 也是可以加载到B.properties文件的。

得到结论,第三方jar相对于项目的目录就类似于,把jar包里面的文件(文件夹)直接放在项目的src下面。

如果要加载A.jar包里面的“/resource/C/D/E.xml”,就是 this.getClass().getResourceAsStream("/resource/C/D/E.xml");

当然不要使用FileInputSteam("/resource/C/D/E.xml")是读不到的(⊙o⊙)哦

 

(注:个人观点,仅供参考)

转载于:https://www.cnblogs.com/Springmoon-venn/p/5483778.html

你可能感兴趣的文章
VS2008 去掉msvcr90的依赖
查看>>
当前记录已被另一个用户锁定
查看>>
Bootstrap
查看>>
Node.js 连接 MySQL
查看>>
ACM-ICPC 2018 world final A题 Catch the Plane
查看>>
那些年,那些书
查看>>
面向对象六大基本原则的理解
查看>>
注解小结
查看>>
java代码编译与C/C++代码编译的区别
查看>>
Bitmap 算法
查看>>
转载 C#文件中GetCommandLineArgs()
查看>>
list control控件的一些操作
查看>>
精读《useEffect 完全指南》
查看>>
SNF快速开发平台MVC-EasyQuery-拖拽生成SQL脚本
查看>>
DrawerLayout实现双向侧滑
查看>>
MySQL入门很简单-触发器
查看>>
LVM快照(snapshot)备份
查看>>
绝望的第四周作业
查看>>
一月流水账
查看>>
数论四大定理
查看>>