如何通过Hibernate/JPA的字节码增强进行属性延迟加载?

栏目: Hibernate · 发布时间: 6年前

内容简介:默认情况下,Hibernate/JPA实体的属性是急切加载的(一次性全部加载)。你确定这是想要的吗?如果不是,那么重要的是要知道可以通过Hibernate字节码检测来延迟加载属性(另一种方法是通过子实体)。这对于存储大量数据的列类型有用:CLOB,BLOB,VARBINARY,等。关键点:

默认情况下,Hibernate/JPA实体的属性是急切加载的(一次性全部加载)。你确定这是想要的吗?

如果不是,那么重要的是要知道可以通过Hibernate字节码检测来延迟加载属性(另一种方法是通过子实体)。这对于存储大量数据的列类型有用:CLOB,BLOB,VARBINARY,等。

关键点:

  • 对于Maven,在pom.xml,激活Hibernate字节码检测(例如,如下使用Maven字节码增强插件)
  • 标记应该延迟加载的列 @Basic(fetch = FetchType.LAZY)

实现案例:

  • 创建一个新用户: localhost:8080/new
  • 获取没有头像的用户(这是图片javax.persistence.Lob- 因此,大量数据:localhost:8080/user
  • 使用头像获取用户(懒惰加载): localhost:8080/avatar

源代码可以在 这里 找到  。


以上所述就是小编给大家介绍的《如何通过Hibernate/JPA的字节码增强进行属性延迟加载?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

免费:商业的未来

免费:商业的未来

Chris Anderson / 中信出版集团 / 2015-10-1 / 35.40

《免费》,这是一个商业模式不断被颠覆、被改写的时代。一种商业模式既可以统摄未来市场,也可以挤垮当前市场——在我们这个现代经济社会里,这并不是一件不可能的事情。“免费”就是这样的一种商业模式,它代表了互联网时代的商业未来。 “免费”商业模式是一种建立在以电脑字节为基础上的经济学,而非过去建立在物理原子基础上的经济学。在原子经济中,随着时间的推移,我们周围的物品都在逐渐升值。但是在字节经济的网络......一起来看看 《免费:商业的未来》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码