0

1対多の関係で結合された2つのテーブルがあるとしましょう

public class Slave
{
   @Id
   @Column(name = "id")
   long id;

   @JoinColumn(name = "master", referencedColumnName = "id")
   Master master;
}

public class Master
{
   @Id
   @Column(name = "id")
   long id;

   @OneToMany(mappedBy = "master", targetEntity = Slave.class)
   Collection<Slave> slaves;
}

CriteriaQuery を作成して、既知の ID を持つマスターのすべてのスレーブを選択することは可能ですか? 次のような SQL を生成するには:

SELECT * FROM slave s WHERE s.master=XXX;

CriteriaQueryこのような「ネイティブクエリ」だけではないはずです

_entityManager.createNativeQuery( "SELECT s FROM master s WHERE s.master = ?1" );
query.setParameter( 1, XXX );

前もって感謝します

4

1 に答える 1