标签:XML xml hibernate DTD --- 文档 构建
XML 文档构建模块
所有的 XML 文档(以及 HTML 文档)均由以下简单的构建模块构成:
-
元素 <!ELEMENT hibernate-configuration (session-factory,security?)>
<!ELEMENT 元素名称 类别>
-
属性 <!ATTLIST property name CDATA #REQUIRED>
<!ATTLIST 元素名称 属性名称 属性类型 默认值>
-
实体
<!ENTITY 实体名称 "实体的值">
-
PCDATA parsed character data,也就是
&、<
被解析为 &、<. -
CDATA character data,也就是不会被解析器解析的文本。
DTD
通过 DTD,您的每一个 XML 文件均可携带一个有关其自身格式的描述。**DTD的作用是定义 XML 文档的合法构建模块。**也就是告诉xml文件构建的形式。
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">com.mysql.cj.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/test05?characterEncoding=UTF-8</property>
<property name="connection.username">root</property>
<property name="connection.password">admin</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="current_session_context_class">thread</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
<mapping resource="test01/Product.hmb.xml" />
</session-factory>
</hibernate-configuration>
Hibernate的数据库的声明xml来理解DTD,英文叫做doc type define。也就是:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
上面的DTD位于 XML 源文件的外部,也就是xml中的链接。一般的格式为<!DOCTYPE 根元素 SYSTEM "文件名">
。其中hibernate-configuration就是根元素,PUBLIC就是SYSTEM。
以下是http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd中的说明:
An instance of this document contains property settings and references to mapping files for a number of SessionFactory instances to be listed in JNDI.
上面说的意思是该文件中的实例包含属性设置和引用。这个引用是映射在JNDI中列出的多个SessionFactory实例的文件。
标签:XML,xml,hibernate,DTD,---,文档,构建 来源: https://blog.csdn.net/qq_14936041/article/details/115266441
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。