【发布时间】:2015-11-08 05:23:21
【问题描述】:
我需要获取一个JAR文件中的休眠配置文件,这个JAR文件通过java编码再次在一个EAR文件中。
一个 Ear 包含多个 Jar 文件,一个 Jar 文件包含单个休眠配置文件。
所以结构是某种东西,
一个耳朵 -
## --Jar1 ##
### ---Folder Structure, and somewhere in the structure hibernate cfg file resides ###
## --Jar2 ##
### ---Folder structure, and hibernate cfg file ###
##--Jar3 and so on ##
我尝试的是我使用 Java API 的 ZipFileInputStream 阅读器来解压缩 EAR 文件,但我没有得到 Jar 文件的 真实路径(绝对路径),以便我可以提取 Jar 文件和从这些提取层次结构中获取我想要的休眠 cfg 文件。
我能够使用 java 编码使用 java API 的 ZipFileInputStream 阅读器解压缩直接包含休眠 cfg 文件的示例 EAR。但我的要求是 EAR 包含 JAR,并且这个 JAR 包含我正在寻找的配置文件。这就是我通过java编程所做的一切
下面是包含 .cfg.xml 文件的 EAR 的代码 sn-p。
FileInputStream fis = new FileInputStream("C:/Users/USER/Downloads/ContactManager.ear");
ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis));
ZipEntry entry = null; String pathName;
String fileName;
while ((entry = zis.getNextEntry()) != null) { pathName = entry.getName();
if(pathName.endsWith(".cfg.xml")){ System.out.println("path name "+pathName);
请告诉我完成这项任务的最佳方法。 谢谢,
【问题讨论】: