A.S*_*eri 5 java hibernate jpa
问题是我需要从数据库中选择一个内部有连接列的对象,我需要该外部对象的 Id。但是休眠连接这两个表,或者如果处于惰性模式,它会再次查询我的数据库。如何在没有其他连接或查询的情况下访问该 Id,而不是主选择查询。
请注意,我使用的是 Hibernate 版本 +5,并且我想要一种通过JPA CriteriaBuilder.
先感谢您。
Obi*_*Jha 12
在这种情况下,您可以将外键映射到实体两次,一次用于实际 ORM,另一次用于在不实际触发新查询的情况下获取 FK。
public class Answer {
@JoinColumn(name = "question_id")
@ManyToOne(targetEntity = Question.class, fetch = FetchType.LAZY)
private Question question;
@Column(name = "question_id", insertable = false, updatable = false)
private Long questionId;
}
Run Code Online (Sandbox Code Playgroud)
这question_id是存在于answer表中。
这样,外键将在第一个查询的结果中(在 questionId 字段中)已经可用,并且不会因为获取 FK 值而触发新查询。
| 归档时间: |
|
| 查看次数: |
2325 次 |
| 最近记录: |