当前位置: 首页 > 面试题库 >

Java中的延迟加载是什么?

南宫阳冰
2023-03-14
问题内容

Java中的延迟加载是什么?我不明白这个过程。有人可以帮助我了解延迟加载的过程吗?


问题答案:

假设你有一个父母,而那个父母有很多孩子。Hibernate现在可以“延迟加载”子级,这意味着在加载父级时,它实际上并未加载所有子级。而是在要求时加载它们。你可以显式地请求此请求,也可以是更常见的情况,当你尝试访问孩子时,hibernate会自动加载它们。

延迟加载可以帮助显着提高性能,因为通常你不需要子级,因此不会加载它们。

还要提防n + 1问题。当你访问集合时,Hibernate实际上不会加载所有子代。相反,它将单独加载每个孩子。遍历集合时,这将导致每个孩子的查询。为了避免这种情况,你可以诱使hibernate模式同时加载所有子级,例如,通过调用parent.getChildren()。size()。



 类似资料:
  • 问题内容: 什么是Java的延迟加载?我不明白这个过程。有人可以帮助我了解延迟加载的过程吗? 问题答案: 假设您有一个父母,而那个父母有很多孩子。Hibernate现在可以“延迟加载”子级,这意味着它在加载父级时实际上并不会加载所有子级。而是在要求时加载它们。您可以显式地请求此请求,或者,更常见的是,当您尝试访问孩子时,hibernate会自动加载它们。 延迟加载可以帮助显着提高性能,因为通常您不

  • 1、mybatis 是否支持延迟加载? 延迟加载其实就是讲数据加载时机推迟,比如推迟嵌套查询的时机。 延迟加载可以实现先查询主表,按需实时做关联查询,返回关联表结果集,一定程度上提高了效率。 mybatis仅支持关联对象association和关联集合对象collection的延迟加载,association是一对一,collection是一对多查询,在mybatis配置文件中可以配置lazylo

  • 描述 (Description) 延迟加载可应用于图像,背景图像和淡入效果,如下所述 - 对于图像 要在图像上使用延迟加载,请按照给定的步骤进行操作 - 使用data-src属性而不是src属性来指定图像源。 将类lazy添加到图像。 <div class = "page-content"> ... <img data-src = "image_path.jpg" class = "l

  • 问题内容: 有没有一种方法可以让您通过运行JDBC查询来延迟加载而获得ResultSet?我希望每行都按我的要求而不是事先加载。 问题答案: 简短答案: 致电前使用。 长答案: 这取决于 非常 多的哪个JDBC驱动程序所使用。您可能需要看一下该页面,该页面描述了MySQL,Oracle,SQL Server和DB2的行为。 主要外卖: 每个数据库(即每个JDBC驱动程序)都有其自己的默认行为。 一

  • 问题内容: 如果这是完全相同的内容,请纠正我,我知道这个话题经常被讨论,但是找不到确切的答案。 问题: 在MVC Web应用程序中处理Hibernate对象的最佳实用解决方案是什么? 细节: 我正在使用Hibernate,并希望在可能的情况下利用延迟加载。 我正在使用MVC风格的Webapp。 我讨厌获得延迟加载初始化异常。 我讨厌不得不在事务之间重新连接Hibernate对象。 选项: 渴望装载

  • 问题内容: 我在JPA实体中的延迟加载属性有问题。我读过许多类似的问题,但它们与spring或hibernate有关,并且他们的后代不适用或没有帮助。 该应用程序是在Wildfly应用程序服务器上运行的JEE和JPA2.1。有两个实体,DAO会话bean和servlet将它们放在一起: 当我运行此代码时,它失败并显示: 我对WebLogic / JPA1使用了非常相似的模式,并且运行平稳。任何的想