gpt4 book ai didi

java - spring boot 嵌入式tomcat获取资源问题

转载 作者:行者123 更新时间:2023-11-28 22:52:39 27 4
gpt4 key购买 nike

我正在将我的项目从之前部署在 tomcat 上的 WAR 迁移为 spring boot 应用程序(主要用于嵌入式 tomcat 解决方案)。

所以我遇到了嵌入式 tomcat 容器的问题,我希望有人可以提供解决方案,也许是通过 spring 或 maven,而不是修改我的项目用来解决这个问题的依赖 jar。

我有两个包含 xsd 文件的数据模型 jar,每个模型在“/catalog/jaxb-catalog.xml”中都有一个目录文件。我发现当我的一个库调用时:

Class loader = Thread.currentThread().getContextClassLoader();
URL url = loader.getResource("/catalog/jaxb-catalog.xml");

它只会一个 xml 文件并忽略第二个 xml 文件,正如我打印出“url”时确认的那样。看起来容器是“TomcatEmbeddedWebappClassLoader”但是,当我的应用程序部署在独立的 tomcat 容器中时,“url”将同时包含这两者,并且容器是 WebAppClassLoader

最佳答案

您可以使用名称读取所有资源org.springframework.core.io.support.PathMatchingResourcePatternResolver它是一个普通的“java”类,因此您可以使用 new 创建一个实例查找所有资源使用resolver.findResources("classpath*:catalog/jaxb-catalog.xml"看看 PathMatchingResourcePatternResolver 的 javadoc,它包含一些有值(value)的信息。

关于java - spring boot 嵌入式tomcat获取资源问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35560467/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com