gpt4 book ai didi

hibernate - EntityManager (setHint) Read-Only 和 Session Read-Only 有什么区别?

转载 作者:行者123 更新时间:2023-12-04 15:54:56 28 4
gpt4 key购买 nike

我正在尝试将一些实体加载为只读,我注意到我有一些选项可以做到这一点,例如 @Immutable 并且在查询中也是只读的。

我的主要问题是 setHint 之间有什么区别:

    getEntityManager().createQuery("SELECT p FROM Post p").setHint(QueryHints.READ_ONLY, true).getResultList();

并设置只读:
    Query query = session.createQuery("SELECT p FROM Post p");
query.setReadOnly(true);
query.list();

它们是一样的吗?

最佳答案

一样:
javax.persistence.TypedQuery.setHint(String, Object)(org.hibernate.jpa.spi.AbstractQueryImpl.setHint(String, Object)) 的 hibernate 实现间接调用了 org.hibernate.Query.setReadOnly(boolean):

org.hibernate.Query.setReadOnly(boolean)
called by org.hibernate.jpa.internal.QueryImplapplyReadOnlyHint(boolean)
called by org.hibernate.jpa.spi.BaseQueryImplsetHint(String, Object)
called by org.hibernate.jpa.spi.AbstractQueryImpl.setHint(String, Object)

关于hibernate - EntityManager (setHint) Read-Only 和 Session Read-Only 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52184939/

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