hibernate一对一、一对多、多对多的配置方法
来源:互联网 发布:mac如何复制粘贴 编辑:程序博客网 时间:2024/05/22 01:46
对应的表功能同上.说明中的主表指Customer,子表指CustomerDetails,中间表指CustomerBack
一、一对多关联映射
这段代码是需要放在一对多中的主表配置中的(Customer代表‘一’端)
﹤set name="CustomerDetails" table="customer_details" inverse="false" cascade="all" sort="unsorted" ﹥ ﹤key column="cust_Id"/﹥ ﹤one to many class="com.hibernate.otm.CustomerDetails"/﹥﹤/set﹥◆name:集合属性的名称(也可以理解为一对多中那个子属性名)
◆table(可选,默认为属性的名称):集合表的名称(可理解为一对多中子表的名称)
◆inverse(可选,默认为false):标记这个集合作为双向关联关系中的方向的一端
◆cascade(可选:默认为none):让操作级联到子实体
◆sort(可选):指定集合的排序顺序
key 中的column=”cust_Id”,cust_Id并不是主表的字段,而是子表中保存主表的字段.
如主表主键为cust_Id,子表中为了保存主表的主键,也建一个cust_Id,key里的cust_Id就是指子表中的cust_Id.
one–to–many 中的class为一对多的子表实例类.
多对一中,没有像一对多的,而是直接用了many–to–one.这段代码是需要放在多对一中的子表配置中的(即CustomerDetails的配置中)
﹤many to one name="Customer" class="Customer" cascade="all" outer join="false" update="false" insert="false" column="cust_Id" not null="true"/﹥◆outer–join:为外链接
◆update,insert:指定对应的字段是否在用于UPDATE和/或INSERT的SQL语句中包含.
◆column:关联的字段名.(多对主类对应的字段名)
◆not–null:是否为null.
二、多对多关联映射
多对多的配置与一对多有点类似.这段代码放的位置也是与一对多的代码放的位置一样.
多对多关系中,多采用中间表来关联两个有多多关系的表的.如Customer与CustomerDetails存在多对多的关系,那么往往是用另外一个表如CustomerBack表来保存它们的关系的,也就是中间表.﹤set name="CustomerBack" table="customer_back" cascade="all"﹥ ﹤key column="cust_Id"/﹥ ﹤many to many class="CustomerDetails" column="custD_id"/﹥ ﹤/set﹥◆name:属性的名称(可理解为中间表的名称)
◆table:表的名称(可理解为中间表的表名称)
◆key 里的cust_Id,是指中间表的cust_Id,为了保存Customer与CustomerDetails的关系,中间表中分别建了cust_Id(Customer的主键)与custD_Id(CustomerDetails的主键)
◆many–to–many中的Class是指多对多中的另一个实例化类,column是指CustomerDetails与中间表关联的字段名.这里是指中间表的
◆custD_Id,不能理解为CustomerDetails的主键.
三、一对一关联映射
一对一的关系更简单.在Customer表的配置中放上这段代码就行了.
﹤one to one name="CustomerDetails" class="CustomerDetails" cascade="all" /﹥◆name:属性名称
◆class:关联的实例化类名
0 0
- hibernate一对一、一对多、多对多的配置方法
- hibernate多对一、一对一、一对多、多对多的配置方法
- hibernate中多对一、一对一、一对多、多对多的配置方法
- hibernate中多对一、一对一、一对多、多对多的配置方法
- Hibernate系列学习之(二) 多对一、一对一、一对多、多对多的配置方法
- hibernate关联关系配置(一对一,一对多,多对多)
- Hibernate关联关系配置(一对一,一对多,多对多)
- Hibernate一对一,一对多,多对多
- hibernate 一对一、一对多、多对多的情况
- Hibernate中一对一,一对多,多对多的写法
- Hibernate 关系配置(一对一,一对多)
- Hibernate关联关系配置(一对多、一对一、多对一和多对多)
- hibernate一对一,一对多,多对一,多对多配置
- Hibernate 一对一,一对多关系
- hibernate 一对多,一对一小结
- Hibernate关联关系配置(一对多、一对一和多对多)
- Hibernate关联关系配置(一对多、一对一和多对多)
- Hibernate关联关系配置(一对多、一对一和多对多)
- Java多线程的一些小知识点
- Bootstrap 表格
- 282. Expression Add Operators
- C语言 输出字符02
- PAT 1007 素数对猜想
- hibernate一对一、一对多、多对多的配置方法
- 打好企业营销战的三要素:战略、专业、实施
- C语言 输出字符03
- easyui-tree 实现checkbox 单选
- Spring AOP API
- The Largest Generation (25)
- C语言输出字符04
- 代码使得分别出现StackOverflowError和OutOfMemoryError
- 在eclipse捣鼓java项目时library加载与webcontent下的web-inf下lib加载jar包的区别