Java 防止hibernate/jpa创建代理

Java 防止hibernate/jpa创建代理,java,hibernate,jpa,Java,Hibernate,Jpa,对于我的团队,我们希望阻止hibernate创建代理。我们不希望使用急切抓取类型(对所有关系都是惰性的),但我们希望hibernate只返回hql/jpql查询中的属性抓取。(其他属性为空) 为什么? 因为对于性能问题,我们希望避免在“get”上出现所有“隐藏sql请求”,并强制开发人员编写良好的jpql/hql查询 这是一个好的选择吗? 你知道怎么做吗 谢谢你我不确定你想要什么:如果你不想让查询以静默方式执行,就不要将属性映射为@OneToMany、@ManyToMany或@ManyToMan

对于我的团队,我们希望阻止hibernate创建代理。我们不希望使用急切抓取类型(对所有关系都是惰性的),但我们希望hibernate只返回hql/jpql查询中的属性抓取。(其他属性为空)

为什么?

因为对于性能问题,我们希望避免在“get”上出现所有“隐藏sql请求”,并强制开发人员编写良好的jpql/hql查询

这是一个好的选择吗? 你知道怎么做吗


谢谢你

我不确定你想要什么:如果你不想让查询以静默方式执行,就不要将属性映射为@OneToMany、@ManyToMany或@ManyToMany。执行jpql并手动设置标记为@Transient的属性(例如通过DAO)

检查