关联关系的crud(增加(Create)、查询(Retrieve)(重新得到数据)、更新(Update)和删除(Delete))的理解(casecade和fetch)
2010-12-22 22:14
706 查看
在多对一双向关联中1.进行save操作,默认情况下,保存其中一个对象,hibernate并不会帮我们保存关联对象,通常可以按照顺序存储每个对象。如果要hibernate帮我们保存关联对象,则必须加上cascade属性,在jpa标准中其取值有(all,persist,remove,reflesh,merge),hibernate就可以保存保存对象的关联对象。2.进行get操作,影响读取操作的属性是:fetch。Manytoone的fetch默认值为eager,而onetomany的fetch默认值为lasy。对于lasy的情况,hibernate不会主动帮我们取关联对象,但是在同一个Session域中当用到其关联对象时,hibernate会取出关联对象。而eager是把所有的关联对象一次加载到内存。3.进行update操作4.进行删除操作。
Cascade和fetch
casecade影响除了get和load以外的操作,hibernate会根据其值进行相应的级联操作
fetch影响的是get和load操作,lasy时,hibernate不会主动取出级联对象,eager时,hibernate会主动取出级联对象。
相关文章推荐
- CRUD:增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)
- discuz 如何添加数据DB::insert和更新数据DB::update 查询DB::query删除DB::delete
- SQLite数据库的添加(Create),查询(Retrieve),更新(Updata),删除(Delete)
- MySQL--操作简记(create创建操纵表、insert插入、update更新、delete删除数据)
- 数据库 误操作(更新数据(Update),删除数据(delete),当然也包括增加大量数据(insert))之后,给出的解决方案
- discuz 如何添加数据DB::insert和更新数据DB::update 查询DB::query删除DB::delete
- Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 'AR一、查询数据集合
- oracle多表关联更新(update)/删除(delete)数据表的的写法
- 学习日记(二)Hibernate用法:针对数据库表数据的增加,查询,更新,删除
- 利用android提高的的insert,query,update,deleteAPI与execSql,rawQuery函数执行原生的插入,查询,更新,删除语
- 更新和删除数据(UPDATE\DELETE)
- 利用android提高的的insert,query,update,deleteAPI与execSql,rawQuery函数执行原生的插入,查询,更新,删除语
- 数据添加(insert),删除(delete),更新(update)
- 1.利用android提高的的insert,query,update,deleteAPI与execSql,rawQuery函数执行原生的插入,查询,更新,删除语句操作花费时间的对比结果
- SQL_4th_插入insert、查询select、删除delete、更新update
- Yii 1.0数据库操作 查询、增加、更新、删除
- Android4.4 ContentResolver查询图片无效 及 图库删除 增加图片后,ContentResolver不更新的问题解决
- 关于MYSQL通过子查询删除重复数据的for update报错问题解决
- jQuery DataTable 删除或更新数据后重新加载
- 稳扎稳打Silverlight(57) - 4.0通信之WCF RIA Services: 概述, 通过 DomainDataSource 实现数据的添加、查询、更新和删除操作