gpt4 book ai didi

java - 如何分离 Hibernate 对象的持久属性

转载 作者:行者123 更新时间:2023-12-02 07:50:48 24 4
gpt4 key购买 nike

我在 Hibernate 中有一个对象,其中有一些延迟加载的多对一列。我不一定需要将对象保留在数据库中以进行一组操作。

如何直接获取一个对象,以便每次尝试访问多对一实体时,它不需要从数据库中延迟获取,并且我可以检索该值(如果不是该实体也没关系)最新),没有打开 session 。

现在我正在打开 session ,创建一个新对象并将其发送以执行要执行的操作。

// Hibernate class
public class Foo {
private Long id;

//many-to-one mapping
private Bar barObj;

//getters and setters
}

现在,每当我调用 fooObj.getBarObj().getId() 时,都会对服务器进行代理调用以获取 ID 的值。我不希望发生此调用,并希望将 fooObj 保存在本地。

最佳答案

您可以使用“fetch=FetchType.EAGER”注释参数,也可以使用明确说明“join fetch barObj”的查询进行提取。第三,您可以write some code这将实现深度去代理。这可能最适合您的需求,尽管远非微不足道。

关于java - 如何分离 Hibernate 对象的持久属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10257375/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com