【问题标题】:how to set fetch type at runtime ? + Hibernate如何在运行时设置获取类型? + 休眠
【发布时间】:2012-06-17 19:26:52
【问题描述】:

hibernate 3.2 运行时如何设置获取类型?

session.beginTransaction();  
Customer customer = session.get(getCustomerId());  
session.save(customer);  
session.commit(); 

如果有可能在运行时更改获取类型(“lazy/eager”)。那么,当已经在 hibernate.mapping 文件中定义了获取模式(即“选择/加入”)时,是否有任何影响?如果问题有任何错误,请见谅。

【问题讨论】:

    标签: hibernate


    【解决方案1】:

    您可以使用join fetch 指定要初始化的特定集合。

    例如

    from Cat as cat
    inner join fetch cat.mate
    left join fetch cat.kittens
    

    查看更多here

    或者您可以使用criteria API

    【讨论】:

    • 你的例子没有意义,与价值观无关。 Hibernate 链接并没有真正的帮助。
    猜你喜欢
    • 2012-10-29
    • 2011-07-23
    • 2011-05-01
    • 1970-01-01
    • 2015-07-19
    • 2010-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多