Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果不编写FPI(正式公共标识符),hibernate.cfg.xml仍然可以工作。为什么?_Java_Xml_Hibernate_Xhtml_Dtd - Fatal编程技术网

Java 如果不编写FPI(正式公共标识符),hibernate.cfg.xml仍然可以工作。为什么?

Java 如果不编写FPI(正式公共标识符),hibernate.cfg.xml仍然可以工作。为什么?,java,xml,hibernate,xhtml,dtd,Java,Xml,Hibernate,Xhtml,Dtd,在Hibernate中,我们将Hibernate配置文件编写为 在这种情况下,如果我们删除FPI(正式公共标识符),那么它仍然有效。为什么?那么写FPI需要什么呢 Ex:-如果我们将hibernate配置文件编写为 Doctype/XML模式可用于检查XML文件的格式是否正确。Hibernate不需要关心它,只要内容是格式良好的(它在解析XML内容时一定会注意到) 文件中包含它将允许工具为您提供附加功能,如自动完成和有效性检查。这不是绝对要求。FPI(以及系统标识符)用于定位DTD(元素和属

在Hibernate中,我们将Hibernate配置文件编写为


在这种情况下,如果我们删除FPI(正式公共标识符),那么它仍然有效。为什么?那么写FPI需要什么呢

Ex:-如果我们将hibernate配置文件编写为


Doctype/XML模式可用于检查XML文件的格式是否正确。Hibernate不需要关心它,只要内容是格式良好的(它在解析XML内容时一定会注意到)

文件中包含它将允许工具为您提供附加功能,如自动完成和有效性检查。这不是绝对要求。

FPI(以及系统标识符)用于定位DTD(元素和属性声明)。然而,XML通常不需要这样的声明;hibernate在其应用程序中使用硬编码的元素和属性。如果希望独立于hibernate LIB验证hibernate配置文件,DTD将非常有用。SGML(XML是其中的一个子集)OTOH甚至需要DTD来解析文档;例如,HTML具有解析器需要了解的“自动关闭”元素。
<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<!DOCTYPE hibernate-configuration PUBLIC
    ""
    "http://hibernate.org/dtd/hibernate-configuration-3.0.dtd">