1

これが私のクラスのアルファとベータです。アルファはベータと1対1の関係があります

ベータ版のあるアルファ版レコードのみを取得したい。

これを実現するのに役立つAlphaのwhere句アノテーションを作成できません。

アルファオブジェクトをフェッチしている間、コード内の追加のクエリを避けたいので、注釈を配置するためのより良い方法はありますか?

/** CLass Alpha*/
@Entity
@Where(clause x =0  and y =0  and  ????????)
class Alpha {    

    @Column(name ="X")
    int x;

    @Column(name ="Y")
    int Y;

    @OneToOne(mappedBy = "alpha")
    Beta beta;
}

/** Class Beta*/
@Entity
class Beta {    
    @OneToOne
    @JoinColumn(name = "ALPHA_REF")
    Alpha alpha;    
}

任意のポインタをいただければ幸いです

4

1 に答える 1

1

名前付きクエリを使用できます

@NamedQueries({
@NamedQuery(name = "<query-name>", query = "SELECT a FROM Alpha a WHERE a.beta is not null :})
于 2012-10-27T04:35:08.097 に答える