这篇文章主要为大家展示了“J2EE中Hibernate xml映射的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“J2EE中Hibernate xml映射的示例分析”这篇文章吧。
对于没有外键关系的简单表,hbm文件中不要做修改就能映射成dom4j的Element,默认每个属性都映射为一个node;有外键关系的要在many-to-one中加入 embed-xml="false",要不的话经常会造成堆栈溢出或者dom4j试图给一个节点设置多个父节点。对Hibernate xml映射映射,可以分简单测试和复杂的测试,如下所示。
简单的测试:
<?xml version="1.0"?> "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="test"> <class name="Xml" table="xml" lazy="true" node="xml"> <id name="id" column="id" type="long" node="@id"> <generator class="native"/> id> <property name="name" column="name" not-null="true" length="250" node="@name"/> <bag name="subs" table="sub" inverse="true" node="subs"> <key column="parent" /> <one-to-many class="Sub" node="sub"/> bag> class> hibernate-mapping><?xml version="1.0"?> "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="test"> <class name="Sub" table="sub" lazy="true" node="sub"> <id name="id" column="id" type="long" node="@id"> <generator class="native"/> id> <property name="name" column="name" not-null="true" length="250" node="@name"/> <many-to-one name="parent" column="parent" class="Xml" embed-xml="false"/> class> hibernate-mapping>
复杂一点的测试:
<?xml version="1.0"?> "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="test"><class name="Dir" table="dir" lazy="true"> <id name="id" column="id" type="long" node="@id"> <generator class="native"/> id> <property name="name" column="name" not-null="true" length="50" node="@name"/> <many-to-one name="parent" column="parent_id" class="Dir" node="@parentId" embed-xml="false"/> <bag name="children" inverse="true" cascade="all" node="dirs"> <key column="parent_id"/> <one-to-many class="Dir"/> bag> <bag name="files" inverse="true" table="file" node="files"> <key column="parent_id" /> <one-to-many class="File"/> bag> class> hibernate-mapping><?xml version="1.0"?> "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="test"> <class name="File" table="file" lazy="true"> <id name="id" column="id" type="long" node="@id"> <generator class="native"/> id> <property name="title" column="title" not-null="true" length="250"/> <property name="content" column="content" not-null="true" type="string" lazy="true" length="10000"/> <many-to-one name="parent" column="parent_id" class="Dir" not-null="true" node="@parentId" embed-xml="false"/> class> hibernate-mapping>
以上是“J2EE中Hibernate xml映射的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。