<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.redsage.hibernate.db.entity.TGroup" table="t_group" dynamic-insert="false" dynamic-update="false">
<id name="id" column="id" type="java.lang.Integer">
<generator class="native"></generator>
</id>
<set name="roles" table="t_gourp_role" lazy="false" inverse="false" cascade="save-update">
<key column="group_id"></key>
<many-to-many class="com.redsage.hibernate.db.entity.TRole" column="role_id"></many-to-many>
</set>
</class>
</hibernate-mapping>
1、t_gourp_role為t_group和t_role之間的映射表,它保存了group和role之間的映射關(guān)系。<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.redsage.hibernate.db.entity.TGroup" table="t_group" dynamic-insert="false" dynamic-update="false">
<id name="id" column="id" type="java.lang.Integer">
<generator class="native"></generator>
</id>
<set name="roles" table="t_gourp_role" lazy="false" inverse="false" cascade="save-update">
<key column="group_id"></key>
<many-to-many class="com.redsage.hibernate.db.entity.TRole" column="role_id"></many-to-many>
</set>
</class>
</hibernate-mapping>
2、一般情況下,cascade應(yīng)該設(shè)置為"save-update",對(duì)于多對(duì)多邏輯而言,很少出現(xiàn)刪除一方需要級(jí)聯(lián)刪除所有關(guān)聯(lián)數(shù)據(jù)的情況,如刪除一個(gè)Group,一般不會(huì)刪除其包含的Role,反之刪除Role一般也不會(huì)刪除其所關(guān)聯(lián)的所有Group.
3、映射表中對(duì)于t_group表記錄的標(biāo)示字段。
4、映射表中對(duì)于t_role表記錄的標(biāo)示字段。
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.redsage.hibernate.db.entity.TRole" table="t_role" dynamic-insert="false" dynamic-update="false">
<id name="id" column="id" type="java.lang.Integer">
<generator class="native"></generator>
</id>
<set name="groups" table="t_gourp_role" lazy="false" inverse="true" cascade="save-update">
<key column="role_id"></key>
<many-to-many class="com.redsage.hibernate.db.entity.TGroup" column="group_id"></many-to-many>
</set>
</class>
</hibernate-mapping>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.redsage.hibernate.db.entity.TRole" table="t_role" dynamic-insert="false" dynamic-update="false">
<id name="id" column="id" type="java.lang.Integer">
<generator class="native"></generator>
</id>
<set name="groups" table="t_gourp_role" lazy="false" inverse="true" cascade="save-update">
<key column="role_id"></key>
<many-to-many class="com.redsage.hibernate.db.entity.TGroup" column="group_id"></many-to-many>
</set>
</class>
</hibernate-mapping>