2016-06-06 51 views
0

請考慮下面的類:需要幫助selfjoin在Hibernate中

class A{ 
    @Column(name="ID") 
    int id; 

    @Column(name="CODE") 
    String code; 

    @Column(name="NAME") 
    String name; 

    @Column(name="ID2") 
    int id2; 

    @Transient 
    @ManyToOne(fetch = FetchType.LAZY, optional = true) 
    @JoinColumns({ @JoinColumn(name = "CODE"), @JoinColumn(name = "ID2") }) 
    @Where(clause="parent.name is NULL") 
    A parent; 

    public A getParent(){ 
     this.parent; 
    } 
} 

我需要檢索對象的基於這些條件父: 上面的代碼不工作,請你幫我解決這個問題。

PS:家長SQL查詢一樣:

select b.* from A a inner join A b 
on a.code = b.code 
and a.id2 = b.id2 
where b.name is null; 

回答