|
|
1
3
|
|
|
2
2
是什么让您假设磁盘上有一个类文件在它自己的目录中?
您可以获取用于创建类本身的URL,如果以
|
|
|
3
2
如果资源与.class文件位于同一文件夹中,则应可通过类路径访问该资源,并可通过getResourceAsStream直接加载该资源。
|
|
|
4
1
我同意你的同事的观点,Java类加载不是为了处理这个用例而设计的。Sun Facelets使用了一种类似的策略,假设URL可以映射到文件,但这并不漂亮。我同意Jon的评论,即考虑到您的部署假设,您的getResource解决方案可能是最干净的。既然您询问这是否是唯一的方法,我还将提供getClass().getProtectionDomain().getCodeSource().getLocation(),它应该是类加载器实际从中加载类的URL(您需要为类的包附加子目录)。这个策略也有相同的URL到文件的假设,所以在这方面没有更好的选择。我想不出其他通用的解决方案。 请注意,getResource返回一个编码的URL,这意味着您不应该直接使用getPath()。特别是,空间会导致问题,尽管如果您可以控制环境,这可能不是问题。考虑使用新文件(URL.TURIO())。 |
|
|
5
0
我想,你可能对 PathMatchingResourcePatternResolver 来自Spring框架。您可以在代码中直接使用它来导航配置文件,也可以查找实现 here |
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |