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