Hibernate中的一对多关系映射
Hibernate框架中关系映射中有:一对一、一对多和多对多,但常用的就是一对多,所以本篇博客就大体概述了一下一对多关系映射。
一对多关系:
例如:客户和订单,客户是一,订单是多
创建customers、orders数据表
在多方添加一方的外键 (在orders表添加customer_id)
建立多对一关系映射 :
在 Order.hbm.xml 配置<many-to-one>
<many-to-one name="customer" class="com.baidu.one2many.Customer" column="customer_id"></many-to-one>
* name:设定待映射的持久化类的属性名字。
* column:设定和持久化类的属性对应的表的外键。
* class:设定持久化类的属性的类型。
* not-null:是否允许为空。
建立一对多关系映射:
在Customer.hbm.xml 添加<set> 元素
<set name="orders">
<key column="customer_id" not-null="true"></key>
<one-to-many class="com.baidu.one2many.Order"/>
</set>
name :设定Customer中集合类型属性名称
<key column :设置生成数据表中外键字段名称
not null :设置外键字段非空约束
<one-to-many > :设置一对多映射关系
class :设置映射关联目标PO类
一对多保存操作:
一对多保存操作--级联保存
一对多保存操作--对象导航
一对多删除操作--级联删除(不建议使用delete!!!)
建议使用delete-orphan:
cascade属性:
inverse属性:目的是减少双向维护带来的多余sql,提高效率
一对多中的父子关系
Hibernate中的一对多关系映射相关推荐
- Hibernate中的一对多XML映射
一对多关系指出一个实体的单个实例与另一个实体的多个实例相关联. 换句话说,一个表中的每个记录与另一个表中的多个记录相关联. 让我们看看如何通过XML映射文件在Hibernate中定义这种关系. 1.实 ...
- (经典)Hibernate的一对多关系映射(三)
一对多关系是表提出来的概念,两张表之间会存在这种,前提是有外键关联. 例如:省份和城市 如果设计类,怎样描述省份和城市之间的一对多关系 省份类里包含多个城市对象,使用 Set集合来描述 城市类里包含一 ...
- php hasmany,浅谈laravel orm 中的一对多关系 hasMany
个人对于laravel orm 中对于一对多关系的理解 文章表 article,文章自然可以评论,表 comment 记录文章的评论,文章和评论的关系就是一对多,一篇文章可以有多个评论. 在 comm ...
- 什么是数据库中的一对多关系?
一对多关系是最常见的数据库关系之一.如果您想了解何时以及如何使用一对多关系,那么本文是一个很好的起点. 您肯定会使用一对多关系将信息存储在任何关系数据库中,无论您是在设计企业级软件还是只是创建一个简单 ...
- PowerDesigner中的对象与关系映射建模
概述 从80年代中期开始,随着C++语言的成功,面向对象语言已经成为软件开发中的主导语言.现在很多商用软件,尤其是企业信息系统,都是使用面向对象语言进行开发的.应用面向对象方法,我们通过类来抽 ...
- (转)Hibernate框架基础——一对多关联关系映射
http://blog.csdn.net/yerenyuan_pku/article/details/52746413 上一篇文章Hibernate框架基础--映射集合属性详细讲解的是值类型的集合(即 ...
- Entity Framework 一对多关系映射
EF中关系映射也是一个很关键的内容,关系映射和属性映射一样,也是在 OnModelCreating 中配置映射.EF中的关系映射有如下三种: One-to-Many Relationship(一对多) ...
- odoo ORM中的filed的关系映射的使用详解1
前言 前面我们详细讲解了odoo ORM中fields中的常见属性的使用,根据不同的属性可以对字段进行不同的限制操作,比如readonly只读,store是否存储到数据库.今天我们继续研究ORM中的关 ...
- hibernate中的一对多和多对多的映射关系
一多对需要注意的问题: 多看文字部分的内容,有助于理解 多 对多需要注意的问题: 转载于:https://www.cnblogs.com/wzhBlog/archive/2013/03/13/2958 ...
最新文章
- 聊一下JVM是如何进行垃圾回收的算法
- 开发者应具备的产品设计意识
- 交易性金融资产账务处理问题及改进
- highcharts如何把图多余的空白页面_零基础如何快速学会WORD基础操作?有秘籍了.........
- glVertexAttribPointer第一个参数理解
- oracle聚合函数wmsys,oracle 自定义聚合函数
- mysql一图秒懂秒清晰 - join连接 ,left join左连接 ,right join右连接 ,inner join内连接
- elk系列5之syslog的模块使用
- viper4android 脉冲样本,【图片】大福利,ViPER4Android FX音效及超过200个精选脉冲样本(转)【华为荣耀3x畅玩版吧】_百度贴吧...
- java调整图片透明度
- 如何在AI工程实践中选择合适的算法?
- JavaSE基础——多态、抽象类、接口
- matlab 2017a界面,超详细干货:matlab2017a与 CCS 6.2联调设置
- 通过PackageManager 获取未安装的apk的包名,应用名,图标等,有个小吭
- 云计算-Micheal Miller 著 姜进磊 孙瑞志 向勇 史美林 译
- 韩服跑跑卡丁车 赛车大全
- 为什么z-index在众多标签中失效
- 微信公众平台调用百度地图
- 滴滴Logi日志服务五大PASS套件开源时间表
- 【每日一练】day(7)