Java 如何使用JAR文件中的MyBatis DTD?

Java 如何使用JAR文件中的MyBatis DTD?,java,xml,mybatis,dtd,Java,Xml,Mybatis,Dtd,今天我们遇到了一个最近的问题,我们的许多应用程序在断电后无法重新启动。事实证明,我们的环境存在一个问题,来自服务器的HTTP请求无法路由到internet 不管什么原因,眼前的问题都解决了。但它突出了我们使用MyBatis、Spring和其他使用XML配置的库的应用程序中的一个“缺陷”。也就是说,DTD位于我们无法控制的服务器上。。。而且,如果无法访问它们:死掉的应用程序 我们发现DTD位于实际的MyBatis JAR文件中。。。但是,我们如何更改XML文件以引用那些嵌入的DTD文件;是否消除系

今天我们遇到了一个最近的问题,我们的许多应用程序在断电后无法重新启动。事实证明,我们的环境存在一个问题,来自服务器的HTTP请求无法路由到internet

不管什么原因,眼前的问题都解决了。但它突出了我们使用MyBatis、Spring和其他使用XML配置的库的应用程序中的一个“缺陷”。也就是说,DTD位于我们无法控制的服务器上。。。而且,如果无法访问它们:死掉的应用程序

我们发现DTD位于实际的MyBatis JAR文件中。。。但是,我们如何更改XML文件以引用那些嵌入的DTD文件;是否消除系统对外部服务器可用性的依赖

把这个改成什么?

我发现我们可以将DTD复制到与XML相同的文件夹中并使其工作。但是,对于这些文件所在的数百个位置而言,这将非常耗时。另一种想法是,我们只是将它们托管在我们自己的内部服务器上,但同样,如果它们宕机,我们就有麻烦了


我要做的是让DOCTYPE引用DTD的URL位于包MyBatis JAR文件中。可能吗?

尝试在顶部使用此选项:

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "org/apache/ibatis/builder/xml/mybatis-3-mapper.dtd">