JPA/Hibernate-单向OneTONE关联上的反向连接?
显示如何从关联的“另一端”连接单向多通。JPA/Hibernate-单向OneTONE关联上的反向连接?,hibernate,jpa,join,Hibernate,Jpa,Join,显示如何从关联的“另一端”连接单向多通。 这是否也适用于OneTONE协会 在我的例子中,我有一个StateTransitionEvent实体,它与OrderStateEntity有单向的一对一关联。我不想使关系在对象级别上是双向的,OrderState类不需要知道转换 @Entity class StateTransitionEvent { @OneToOne private Order transitionFrom; @OneToOne private Or
这是否也适用于OneTONE协会 在我的例子中,我有一个StateTransitionEvent实体,它与OrderStateEntity有单向的一对一关联。我不想使关系在对象级别上是双向的,OrderState类不需要知道转换
@Entity
class StateTransitionEvent {
@OneToOne
private Order transitionFrom;
@OneToOne
private Order transTo;
}
@Entity
class OrderState {
// no association to StateTransitionEvent
}
由于Order有许多单向关系,它希望从Order实体开始查询,但我需要将Order与StateTransitionEvent连接起来。
查询将类似于:
从Order o中选择e JOIN StateTransionEvent.transitionFrom tf
这是可能的,还是我必须使关联在对象级别上是双向的?您的问题不是很清楚。什么是
e
,在中,从顺序中选择e以连接状态TransitionEvent.transitionFrom tf
无法从Order加入到StateTransitionEvent(因为从Order到StateTransitionEvent没有关联)。但您可以从另一个方向加入,您可以选择顺序或事件:
select e from StateTransitionEvent e join e.transitionFrom tf
where e.foo = :foo and tf.bar = :bar
或
select tf from StateTransitionEvent e join e.transitionFrom tf
where e.foo = :foo and tf.bar = :bar