Hibernate框架学习3

一对多|多对一

一对多

多对一

级联操作

 

结论: 简化操作.一定要用,save-update,不建议使用delete.

关系维护

在保存时.两方都会维护外键关系.关系维护两次,冗余了.
多余的维护关系语句,显然是客户这一端在维护关系

 

多对多

 

inverse属性

级联属性

 

查询

1.oid查询-get

2.对象属性导航查询

查询-HQL语法

基础语法

排序

 

条件

分页

 

聚合

 

投影

 

多表查询

HQL

HQL语法

 内连接

 

左外链接

 

右外连接

 

查询-Criteria语法

 

条件

分页

排序

 

统计

离线查询

非离线 

 

 

查询优化

类级别查询

get方法:没有任何策略.调用即立即查询数据库加载数据.

load方法: 应用类级别的加载策略 

 

lazy(默认值):true, 查询类时,会返回代理对象.会在使用属性时,根据关联的session查询数据库.加载数据.

lazy:false. load方法会与get方法没有任何区别.调用时即加载数据.

结论:为了提高效率.建议使用延迟加载(懒加载)

注意:使用懒加载时要确保,调用属性加载数据时,session还是打开的.不然会抛出异常

关联级别查询

 集合策略

 

关联属性策略

结论:为了提高效率.fetch的选择上应选择select. lazy的取值应选择 true. 全部使用默认值.

no-session问题解决: 扩大session的作用范围.

批量抓取

 

猜你喜欢

转载自www.cnblogs.com/escapist/p/9057555.html
今日推荐