`
JJYAO
  • 浏览: 4577 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Hibernate的Lazy loading机制到处扩散对系统架构带来的不良后果

阅读更多
看了以前的帖子
http://www.iteye.com/post/282606
也结合自己目前遇到的问题
我认为Hibernate Lazy loading(主要指使用OpenSessionInView)机制是不能用在稍微复杂的企业系统中的
它看似方便,走了捷径,其实破坏了固有的分层结构,把本该属于持久层的机制四处传播,同时也带来了很多风险,会影响其他的功能的使用
主要体现在
1. Web remoting
2. Cluster环境session对象序列化的问题(现在越来越多的框架会根据一顶的策略,把状态维护在session中)
3. xml-java object serialize和Deserialize
4. 将来的其它RIA技术

所以,从系统总结架构考虑,我是坚决杜绝使用将lazy机制扩散到service层以外的。
我的建议是web层存在一个剪裁过的VO,与Service层的PO完成自动数据的复制(手工 or 基于元数据描述)

但不可否认,lazy loading在适当的场合还是能发挥其作用的
分享到:
评论

相关推荐

    gilead hibernate lazyload例子

    这就是Hibernate懒加载(Lazy Load)机制的作用所在。懒加载是一种延迟加载策略,只在真正需要时才加载关联的数据,以减少内存消耗和提高响应速度。 Gilead,全称为Hibernate for Flex,是用于Flex和Hibernate之间...

    Lazy loading - eager loading

    In this article I want to discuss the lazy loading mechanism provided by NHibernate. It is recommended for maximum flexibility to define all relations in your domain as lazy loadable. This is the ...

    Hibernate lazy延迟加载

    **标题**: Hibernate懒加载(Lazy Loading) 在Java的持久化框架Hibernate中,懒加载(Lazy Loading)是一种重要的优化策略,它的核心思想是“延迟加载”或“按需加载”。默认情况下,当一个实体被加载时,并不会...

    页面实现Lazy Loading效果,类似于微博

    在网页开发中,"页面实现Lazy Loading...通过以上这些技术点,我们可以构建出一个高效且用户体验良好的Lazy Loading系统,就像微博那样。在实际项目中,需要根据具体需求和资源选择合适的方法和工具,以实现最佳效果。

    Hibernate延时加载与lazy机制.doc

    Hibernate的延迟加载(Lazy Loading)和懒加载机制(Lazy Initialization)是优化ORM框架性能的重要策略。这个机制的主要目的是提高程序的效率,减少不必要的数据库交互,只在真正需要数据时才去加载它们。以下是对...

    IOS TableView Lazy Loading Demo

    当应用需要加载图片时,特别是网络图片,采用“懒加载”(Lazy Loading)策略是提高性能和节省资源的有效方式。这个“IOS TableView Lazy Loading Demo”就是演示了如何将UITableView与懒加载技术相结合,以优化用户...

    hibernate 中的lazy属性祥解.txt

    在探讨Hibernate框架中的`lazy`属性时,我们深入解析了其功能、应用场景以及与之相关的潜在问题,尤其关注于如何有效利用此特性以优化数据库性能和应用响应速度。 ### Hibernate框架简介 Hibernate是一个开放源码...

    Hibernate lazy加载FOR Connection

    标题中的“Hibernate lazy加载FOR Connection”指的是Hibernate框架中的一种特性,即懒加载(Lazy Loading)。在Hibernate中,懒加载是一种优化策略,它推迟对关联对象的加载,直到真正需要使用这些对象时才进行加载...

    Lazy Loading:懒加载的常见问题与解决方案.docx

    Lazy Loading:懒加载的常见问题与解决方案.docx

    Dwr+Hibernate的Lazy问题

    DWR 是一种让 JavaScript 在浏览器中直接调用服务器端 Java 方法的技术,而 Hibernate 是一个流行的Java持久化框架,它支持对象关系映射(ORM)以及延迟加载(Lazy Loading)功能。 在描述中提到的问题是,当使用...

    hibernate的lazy策略forClass

    在Java的持久化框架Hibernate中,懒加载(Lazy Loading)是一种重要的对象关系映射策略,用于提高应用程序的性能。懒加载的基本思想是延迟加载,即当真正需要数据时,才去数据库加载。在这个场景中,我们关注的是...

    hibernate在集合上的lazy策略

    在Java的持久化框架Hibernate中,懒加载(Lazy Loading)是一种优化策略,它允许我们推迟对关联对象的加载,直到真正需要它们的时候。标题“hibernate在集合上的lazy策略”指的是Hibernate如何处理与实体相关的集合...

    lazyloading.rar

    在移动设备上,由于网络资源有限以及用户对页面加载速度的高要求,图片懒惰加载(Lazy Loading)技术成为了一种优化网页性能的有效方法。"lazyloading.rar"这个压缩包文件提供了一个实现移动端图片懒惰加载的解决...

    解决Lazy最有效的方法

    在Hibernate中,这种机制被称为延迟加载(lazy loading),它通过代理模式实现了对关联实体的按需加载,极大地提升了系统性能。 ### 五、Lazy Loading的应用场景与考虑因素 在实际开发中,Lazy Loading特别适用于...

    lazyLoading.rar

    在提供的"lazyLoading.rar"压缩包中,包含了一个完整的实现图片懒加载的实例。其中,HTML5页面应该包含了使用`data-src`的`<img>`标签,JavaScript文件(可能是.js后缀)则包含了处理滚动事件和图片加载逻辑的代码。...

    当设置lazy=true时,怎样使用extjs和Hibernate

    当我们设置Hibernate中的实体属性`lazy=true`时,这是懒加载(Lazy Loading)机制的体现。懒加载是一种优化策略,它允许我们在需要时才加载关联的对象,而不是在初始加载实体时就加载所有关联数据,从而提高性能。 ...

    Lazy Loading:CSS懒加载策略.docx

    Lazy Loading:CSS懒加载策略.docx

    Lazy Loading:懒加载技术概论.docx

    Lazy Loading:懒加载技术概论.docx

    Lazy Loading:JavaScript懒加载实现.docx

    Lazy Loading:JavaScript懒加载实现.docx

    hibernate延迟机制分析

    在Java的持久化框架Hibernate中,延迟加载(Lazy Loading)是一种优化策略,旨在提高应用程序的性能和效率。当一个实体的某个属性是一个关联的集合,如一对多的关系,Hibernate默认会采用延迟加载机制。这意味着在...

Global site tag (gtag.js) - Google Analytics