Hibernate 多对一配置

原创 2017年10月06日 19:54:48

public class Posts{ //文章
private int id;
private String name;
private String userid;
private User author;
set/get;
}


public class User{ //用户(作者)
private int id;
private String name;
}



<Post.hbm.xml>

<!-- 多方无法放弃外键维护权,所以不存在inverse,设置级联保存 -->
		 <many-to-one name="author" class="cn.test.domain.User" lazy="false" cascade="save-update" >
		      <column name="user_id" ></column>
		 </many-to-one>



讲解:

对应的两张表中必须有相应的外键关系,

author:既是指Posts类中的属性,用来存储关联的User对象

User:指User类

user_id:指的是User类对应的表中的外键(不是指类中的属性名,是表中的字段名),这里非常重要,我在这里迷惑了好久

在User类中有userid对应表中的user_id,但是写的是user_id,因为前面也写了,column指的就是字段


lazy:这个属性是指当加载父关联时是否要同时加载子关联,如果取 true 就是查询 Post (文章)时会同时把对应的 User (作者)加载进内存

如果取 false 那就是不会同时加载进内存,当使用到User对象时再加载,但是要保证 session 没有关闭

默认值为ture,延迟加载


inverse:放弃外键维护权,在多的一方中,默认为false,不能放弃外键维护

在一的一方中可以选择放弃外键维护,开发中也是这么做的



版权声明:本文为博主原创文章,未经博主允许不得转载。

Hibernate一对多映射配置

PS、inverse与cascade区别 1、inverse表示是否反转控制,默认为false,表示不反转,由本类控制       表现为一方添加时,由inverse="false"的类修改外键列。 ...
  • sw_san
  • sw_san
  • 2016年04月21日 15:50
  • 1780

hibernate中的一对多与多对一的详细配置解析

1.Employee package cn.itcast.b_one2Many; public class Employee { private int empId; private St...
  • miachen520
  • miachen520
  • 2016年08月10日 09:04
  • 3850

hibernate 注解配置一对多关系简单实例

hibernate 注解配置一对多关系      从Hibernate 2.5开始就可以使用annotation实现实体关系的映射了,减少了配置hbm文件的繁琐,而且annotatio...
  • tomcat_2014
  • tomcat_2014
  • 2015年05月26日 10:02
  • 4667

Hibernate关联关系映射-----双向一对多/多对一映射配置

转自:http://blog.csdn.net/yifei12315/article/details/6985194 ///   Hibernate:       ///       双向关联...
  • huang798807481
  • huang798807481
  • 2012年05月02日 17:10
  • 1036

hibernate系列十:多对多关联配置及案例(二)

接上一篇,还是以学生---课程为例。 一  把多对多拆分成两个多对一,组合主键的方式 ================sql脚本========================== CREATE...
  • wx5040257
  • wx5040257
  • 2017年11月30日 00:09
  • 85

Hibernate使用中间表完成单向多对多关联关系的配置和级联操作示例

有两个原本没有关系的
  • zdx1515888659
  • zdx1515888659
  • 2014年10月17日 15:14
  • 595

Hibernate关联关系配置(一对一,一对多,多对多)

第一种关联关系:一对多(多对一) "一对多"是最普遍的映射关系,简单来讲就如消费者与订单的关系。 一对多:从消费者角的度来说一个消费者可以有多个订单,即为一对多。 多对一:从订单的角...
  • pangqiandou
  • pangqiandou
  • 2016年11月27日 18:58
  • 845

Hibernate关联关系配置(一对多、一对一和多对多)

第一种关联关系:一对多(多对一) "一对多"是最普遍的映射关系,简单来讲就如消费者与订单的关系。 一对多:从消费者角的度来说一个消费者可以有多个订单,即为一对多。 多对一:从订单的角...
  • liuqinstudy
  • liuqinstudy
  • 2013年02月26日 18:14
  • 974

hibernate一对多及多对多配置

Hibernate的一对多操作: 以客户和联系人为例:客户是一,联系人是多 第一步创建两个实体类,客户和联系人 第二步让两个实体类之间互相表示 (1)在客户实体类里面表示多个联系人 - ...
  • Dawn_WL
  • Dawn_WL
  • 2017年10月30日 10:08
  • 121

Hibernate中多表设计的一对多,多对一的映射文件的配置

一对多(客户表与联系人表为例): 一对多关系中习惯性的把一方称为主表,把多方称为从表,外键指的是从表中有一列,取值参照主表的主键,这一列就是外键。 举例:一方为客户,多方为联系人 在客户的实体类中需要...
  • shuaishuaidewo
  • shuaishuaidewo
  • 2017年11月02日 16:34
  • 44
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hibernate 多对一配置
举报原因:
原因补充:

(最多只允许输入30个字)