如何在Java中的类路径上找到资源?特别是以.hbm.xml结尾的内容
时间:2020-03-06 14:48:39 来源:igfitidea点击:
如何在Java中的类路径上找到资源?
特别是以.hbm.xml结尾的内容。
我的目标是获取以" .hbm.xml"结尾的类路径上所有资源的列表。
解决方案
我们必须获得一个类加载器,并测试它是否是URLClassLoader。如果是这样,请向下转换并获取其URL。从那里,将每个文件作为JarFile打开,并查看其条目。将正则表达式应用于每个条目,看看是否是我们感兴趣的条目。
显然,这并不快。最好给它一个在类路径中查找的名称,也许是在每个类路径元素的META-INF目录中的标准文件名中列出,类似于ServiceProvider工具所使用的技术。请注意,我们可以在类路径上列出具有给定名称的所有文件。
MyClass.class.getClassLoader()。getResourceAsStream(" Person.hbm.xml")是查找它的一种方法。