用户和组的关联,一个用户只能属于一个组,一个组可以拥有多个用户
User.java:
package cn.edu.hpu.one2many; public class User { private int id; private String name; private Group group; public Group getGroup() { return group; } public void setGroup(Group group) { this.group = group; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
package cn.edu.hpu.one2many; import java.util.HashSet; import java.util.Set; public class Group { private int id; private String name; private Set<User> users=new HashSet<User>(); //选择set的原因是因为,set互相之间不会有重复的 //跟数据库模型比较匹配 public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Set<User> getUsers() { return users; } public void setUsers(Set<User> users) { this.users = users; } }
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="cn.edu.hpu.one2many"> <class name="User" table="m_user" dynamic-update="true"> <!-- 主键 这里的主键名字刚好也是'id'--> <id name="id" column="id"> <generator class="native"></generator> </id> <property name="name"></property> <!-- 两边的group配置的colum必须一样 --> <many-to-one name="group" column="groupId"></many-to-one> </class> </hibernate-mapping>
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="cn.edu.hpu.many2one"> <class name="Group" table="x_group" dynamic-update="true"> <!-- 主键 这里的主键名字刚好也是'id'--> <id name="id" column="id"> <generator class="native"></generator> </id> <property name="name"></property> <set name="users"> <key column="groupId"></key><!-- 指定关联字段的名字叫什么 --> <one-to-many class="cn.edu.hpu.one2many.User"/> </set> </class> </hibernate-mapping>
references m_group (id)
转载请注明出处:http://blog.csdn.net/acmman