Hibernate多对一映射

阅读更多
多对一:多个对象对应一个对象,在数据库中表现为多个表与另一个表为外键关联
以用户和公司为例,一个公司可以有好多用户,但一个用户不能同时在多个公司,这样的关联关系是单向多对一
步骤:
1.创建用户表 公司表sql语句,用户表中设置一个外键关联公司表

 

Hibernate多对一映射_第1张图片
 2.创建User Company实体类 并写映射文件

 

    1) 在User中加入Company属性,并写get set方法

    2)在User.hbm.xml中加入多对一映射,name为User中引入的company   column为User在数据库表中的companyid

 

Hibernate多对一映射_第2张图片
  Hibernate多对一映射_第3张图片

 

3.在Hibernate事务中加入session.save(); company  user
Hibernate多对一映射_第4张图片
  Hibernate多对一映射_第5张图片
报错如下:
Hibernate多对一映射_第6张图片
 正确方法是在t_user表中插入2条记录,在t_company下插入一条记录
Hibernate多对一映射_第7张图片
 

你可能感兴趣的:(Hibernate,多对一)