Hibernate关联映射-数据对象三种关系
Hibernate框架基于ORM设计思想,它将关系型数据库中的表与我们java中的类进行映射,一个对象就对应着表中的一条记录,而表中的字段对应着类中的属性。
数据库中表与表之间存在着三种关系,也就是系统设计中的三种实体关系。
一对一
原则有两种:
1. 唯一外键对应:在任意一方添加外键来描述对应关系
2. 主键对应:一方的主键作为另一方的主键
Class Employee{Private Archives archives;
}
Class Archives{Private Employee employee;
}
一对多(多对一)
客户与订单之间一对多关系(多对一)
建表原则:在多的一方添加外键来描述关联关系
Class Customer{Private Set<Order> orders;
}Class Order{Private Customer c;
}
多对多
例如学生与老师
建表原则:通过一张中间表来描述其对应关系
Class Student{Set<Teacher> ts;
}
Class Teacher{Set<Student> ss;
}
Hibernate关联映射-数据对象三种关系相关推荐
- (转)Hibernate关联映射——对象的三种关系
http://blog.csdn.net/yerenyuan_pku/article/details/70148618 Hibernate关联映射--对象的三种关系 Hibernate框架基于ORM设 ...
- Hibernate持久化对象三种状态
持久化类类三种状态介绍 瞬时态:也叫做临时态或自由态,它一般指我们new出来的对象,它不存在OID,与hibernate session无关联,在数据库中也无记录.它使用完成后,会被jvm直接回收掉, ...
- python 全栈开发,Day62(外键的变种(三种关系),数据的增删改,单表查询,多表查询)...
一.外键的变种(三种关系) 本节重点: 如何找出两张表之间的关系 表的三种关系 一.介绍 因为有foreign key的约束,使得两张表形成了三种了关系: 多对一 多对多 一对一 二.重点理解如果找出 ...
- Hibernate关联映射(一对多/多对多)
版权声明:翀版 https://blog.csdn.net/biggerchong/article/details/84340105 3. Hibernate关联映射 上接Hibernate持久化类 ...
- Hibernate 关联映射 之 多对多 关联(二) 之拆分
1.由问题引出一个多对多拆分成两个多对一 问题:Hibernate 关联映射 之 多对多 关联(一)中中间表只是一个存放用户和角色的表,并无其他作用,如果客户有其他的需求,该表就无法扩展. 2.问题解 ...
- hibernate关联映射_具有关联映射的Hibernate Composite ID
hibernate关联映射 最近,我们面临着带有复合id字段的Hibernate关联映射的棘手情况. 我们需要与一对一和多对一进行双向关联.我们的拖曳表是" REPORT"和&qu ...
- (转)Hibernate关联映射——一对多(多对一)
http://blog.csdn.net/yerenyuan_pku/article/details/70152173 Hibernate关联映射--一对多(多对一) 我们以客户(Customer)与 ...
- SQL外键foreign key 表与表之间的三种关系
表与表之间的三种关系 多对一关系表 注意事项: 一对多表关系,外键字段建在多的一方. 在创建表的时候,一定要先建被关联表. 在录入数据的时候,也必须先录入被关联表. 删除 一定要先删除主键表,才可以删 ...
- MySql数据库三种关系详解
如何分辨三种关系,以及三种关系的图列对比. 1.分析三种关系. 是否左表的多条记录可以对应右表的一条记录,是,则证明左表的一个字段 关联(foreign key)右表的一个字段(通常为ID) 是否右表 ...
最新文章
- 仅用 480 块 GPU 跑出万亿参数!全球首个“低碳版”巨模型 M6 来了
- 高通量测序技术的原理及各平台优势和实践应用的分析
- Junit 测试之 Spring Test
- C语言DFS算法的实现(附完整源码)
- python基本数据类型包括哪些_python入门3——基本数据类型
- double类型问题
- win10上编译libharu库
- 手机流量共享 linux,linux – 通过HTB共享带宽和优先处理实时流量,哪种方案更好?...
- 9个元素换6次达到排序序列_C语言必学的12个排序算法:希尔排序(第3篇)
- Webpack实战(五):轻松读懂Webpack如何分离样式文件
- spark基础之spark streaming的checkpoint机制
- iOSQuartz2D-04-手动剪裁图片并保存到相册
- Quartus II 13.0安装和破解教程
- 关于电信路由猫、无线路由猫的设置
- At least one JAR was scanned for TLDs解决办法
- Nginx之一:Nginx的编译安装
- ubuntu下搭建不同端口网站
- 听说你还不了解微前端?[收藏=学会]
- 使用Docker Compose构建ZigBee基础架构
- 大数据技术之Flume