社区
Java EE
帖子详情
hibernate什么时候延迟加载?
寂寞空虚党
2009-05-08 10:11:30
比如有的时候,不延迟加载,效率就比较低。
若是延迟加载的话,就会报 Session已关闭。
...全文
269
9
打赏
收藏
hibernate什么时候延迟加载?
比如有的时候,不延迟加载,效率就比较低。 若是延迟加载的话,就会报 Session已关闭。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
寂寞空虚党
2009-05-18
打赏
举报
回复
我是用了 spring,我的意思是,延迟加载的话,我想取出这个对象里面的一个属性对象的属性对象的属性,类似这种级联的时候,
不好控制,如果不延迟,是肯定没问题,但效率会打折扣。如果延迟的话, 就不好控制Session了
swprogrammer
2009-05-15
打赏
举报
回复
在查询的时候你用load,那么hibernate就会先给你返回一个代理对象,当你调用这个对象的属性的时候hibernate才会去加载这个对象。
get不会使用延迟加载
你用spring管理hibernate事务的话,那就会不存在session关闭的对象
用spring管理事务,也是现在一种最常用的方式
chenleicom
2009-05-15
打赏
举报
回复
比如 你取一个set集合里面的值 如果有100条数据 如果不是延时加载 那么它运行到set集合取数据的时候 就马上发出100条SQL语句 到数据库里 查询值 效率肯定降低
你延时加载 session关闭 是因为你没处理好session
如果加了spring 可以自己写个单独的session类 继承OpenSessionInviewFilter类 并实现这个类里面的方法
如果是hibernate 就把session放到 filter类里面去 管理
原理都是 如果session是关闭的 就打开 如果session是打开就直接返回
qinlu7662032
2009-05-14
打赏
举报
回复
不使用 延迟加载的话 性能太差 还是用最原始的方法 写一个查询方法 如果需要级联插叙的话 就调用它 这样就不用考虑什么性能问题了
m21686041
2009-05-13
打赏
举报
回复
要是延时加载可以随时空值就好了..不过按我这个初学者的理解可能要 专门写个方法来操作xml
kjduanhaowei
2009-05-13
打赏
举报
回复
lazy加载的话,加一个OpenSessionInViewFilter应该就可以把东西拿上来了吧?
lanxin8805
2009-05-12
打赏
举报
回复
呵呵,是一个很纠结的问题,我也总在考虑
寂寞空虚党
2009-05-10
打赏
举报
回复
[Quote=引用 1 楼 fgl459 的回复:]
例如:银行开户,一个人可以开多个帐户,一个帐户只能属于一个人,所以在用户类里包含一个帐户的集合,帐户类里包含一个用户类型,他们之间是一对多的关系.
如过你在查询的时候,通过用户查询是,如果只想查到用户就用(hibernate)默认的延迟加载,这样效率也高,如果你想把该用户的的所有帐户都一同查出来,那就需要立即加载了,这样一来如果一个用户对应的帐户比较多的话,他的效率是很低的.
设置加载方式一般有两种,一种是通过映射文件(…
[/Quote]
但是,我要是延迟的话。,如果我要在页面上显示里面那个对象属性的,属性的话。。是显示不出来的
fgl59
2009-05-08
打赏
举报
回复
例如:银行开户,一个人可以开多个帐户,一个帐户只能属于一个人,所以在用户类里包含一个帐户的集合,帐户类里包含一个用户类型,他们之间是一对多的关系.
如过你在查询的时候,通过用户查询是,如果只想查到用户就用(hibernate)默认的延迟加载,这样效率也高,如果你想把该用户的的所有帐户都一同查出来,那就需要立即加载了,这样一来如果一个用户对应的帐户比较多的话,他的效率是很低的.
设置加载方式一般有两种,一种是通过映射文件(lazy=false),另一种是通过程序的方式来实现的也很简单.
Hibernate
3的依赖包
10. **增强的性能**:通过
延迟加载
、批处理和缓存机制,
Hibernate
能够在不牺牲性能的情况下提供强大的功能。 在Eclipse中使用这些依赖包,你需要按照以下步骤操作: 1. **创建项目**:首先,在Eclipse中创建一个新...
深入浅出
Hibernate
(PDF)第一部分
从一个基础程序入手,讲述
Hibernate
的基本语法与配置,慢慢升高到缓存、
延迟加载
等高级特性。本书内容深入浅出,先讲述持久层设计与ORM,再由
Hibernate
概述、
Hibernate
基础
Hibernate
高级特性顺序展开,直至
Hibernate
...
hibernate
4.2.1
8. **
延迟加载
**:
Hibernate
的懒加载(Lazy Loading)机制可以按需加载关联对象,提高性能。 9. **事件监听**:
Hibernate
提供事件监听器接口,如PreInsertEventListener、PostUpdateEventListener等,允许开发者在...
ssh面试题总结(很详细)
延迟加载
机制是为了避免一些无谓的性能开销而提出来的,所谓
延迟加载
就是当在真正需要数据的时候,才真正执行数据加载操作。在
Hibernate
中提供了对实体对象的
延迟加载
以及对集合的
延迟加载
,另外在
Hibernate
3 中...
hibernate
-release-4.2.8.Final.zip
2. **
延迟加载
优化**:
延迟加载
是
Hibernate
的一个重要特性,4.2.8.Final 在这方面进行了优化,避免了不必要的数据加载,减少了内存消耗。 3. **事务管理**:该版本增强了对Spring事务管理的支持,使得在Spring环境...
Java EE
67,543
社区成员
225,859
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章