【发布时间】:2015-11-27 14:36:36
【问题描述】:
我们的应用程序中的一个模型对象有许多字段配置为像这样急切地获取:
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "field")
public Field getField() {
return this.field;
}
但是我有时不需要这些信息,这会毫无意义地减慢我的查询速度。我无法更改行为并改用FetchType.LAZY,因为我不知道会对整个应用程序产生什么影响(遗留......)。有没有办法简单地告诉hibernate 不获取任何内容,except 如果它在查询中指定?
【问题讨论】:
-
你使用的是 hql 还是标准?
-
HQL 主要是(命名查询),但如果需要,我可以切换到条件。
标签: java hibernate lazy-loading eager-loading