Hibernate关系映射(9)_多对一双向关联
2010-10-16 22:11
471 查看
一.Annotation方式:
User与Group是多对一的关系。在User持有Group的引用,同时Group也持有User集合的引用
[b]二.XML方式:(以上程序去掉注解)[/b]
在Group.hbm.xml中配置映射关系:
在User.hbm.xml中配置映射关系:
**注意:one2many中的<key>中column属性与many2one中column属性要设一至,否则会出现两个参考字段。
User与Group是多对一的关系。在User持有Group的引用,同时Group也持有User集合的引用
/* * Group.java */ @Entity @Table(name="t_group") public class Group { private int id; private String name; private Set<User> users = new HashSet<User>(); @OneToMany(mappedBy="group") public Set<User> getUsers() { return users; } public void setUsers(Set<User> users) { this.users = users; } @Id @GeneratedValue 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; } }
/* * User.java */ @Entity @Table(name="t_user") public class User { private int id; private String name; private Group group; @Id @GeneratedValue public int getId() { return id; } public void setId(int id) { this.id = id; } @ManyToOne public Group getGroup() { return group; } public void setGroup(Group group) { this.group = group; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
[b]二.XML方式:(以上程序去掉注解)[/b]
在Group.hbm.xml中配置映射关系:
<hibernate-mapping> <class name="com.szy.hibernate.model.Group" table="t_group"> <id name="id"> <generator class="native"></generator> </id> <property name="name"></property> <set name="users"> <key column="groupId"></key> <one-to-many class="com.szy.hibernate.model.User"/> </set> </class> </hibernate-mapping>
在User.hbm.xml中配置映射关系:
<hibernate-mapping> <class name="com.szy.hibernate.model.User" table="t_user"> <id name="id"> <generator class="native"></generator> </id> <property name="name"></property> <many-to-one name="group" column="groupId"></many-to-one> </class> </hibernate-mapping>
**注意:one2many中的<key>中column属性与many2one中column属性要设一至,否则会出现两个参考字段。
相关文章推荐
- 【Hibernate四】关系映射之一对多双向关联
- hibernate映射关系之一对一双向主键关联
- Hibernate关系映射级别注解(多对多单向外键关联、多对多双向外键关联)
- Hibernate 映射关系 ---One2Many 双向关联
- hibernate的一对多双向关联映射----客户和订单关系
- Hibernate关系映射(2)_一对一双向外键关联
- Hibernate之对象关系映射05一对一双向主键关联
- 【HIbernate框架学习】:Hibernate对象关系映射之双向多对多关联映射
- Hibernate关系映射(4)_一对一双向主键关联
- Hibernate之对象关系映射06一对一双向外键关联
- Hibernate关系映射 --- 一对一实例分析(双向关联,是基于主键的)
- hibernate映射关系 一对多、多对一单向关联 一对多双向关联
- hibernate 关系映射之 双向外键关联一对一
- Hibernate关系映射(二)一对一双向外键关联@OneToOne Annotation方式
- Hibernate教程05_关系映射之一对一双向外键关联
- Hibernate 映射关系 ---Many2Many 双向关联
- hibernate映射一对多,双向关系[关联自身],初学例子四
- Hibernate关系映射 一对一双向外键关联@OneToOne Annotation方式
- Hibernate关系映射(五)一对多、多对一双向关联@OneToMany @OneToMany Annotation方式
- Hibernate关系映射(七)多对多双向关联@ManyToMany Annotation方式