hibernate多对多映射
一个用户(User)可以参见多种活动(Act),一个活动可以被多个用户参加,因此是多对多的关系
1.User.hbm.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.example.hibernate.entity">
<!-- 关联数据表和对象 -->
<class name="User" table="t_user">
<!-- 关联主键 -->
<id name="id" column="id">
<generator class="identity"></generator>
</id>
<!-- 关联字段 -->
<property name="username" column="username"></property>
<set name="joinActs" table="t_user_act_join">
<key column="user_id"/>
<many-to-many class="Act" column="act_id"/>
</set>
</class>
</hibernate-mapping>
2.Act.hbm.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.example.hibernate.entity">
<!-- 关联数据表和对象 -->
<class name="Act" table="t_act">
<!-- 关联主键 -->
<id name="id" column="id">
<generator class="identity"></generator>
</id>
<!-- 关联字段 -->
<property name="name" column="name"></property>
<set name="users" table="t_user_act_join">
<key column="act_id"/>
<many-to-many class="User" column="user_id"/>
</set>
</class>
</hibernate-mapping>