@embeddableを使用して複合キークエリを実行しようとしています。Hibernateクエリ複合キー
これまで私がこれまで行ってきたことは次のとおりです。
@Embeddable
public class IfasvVendorPK implements Serializable{
@Column(length = 4, nullable = false)
protected String peId;
@Column(length = 8, nullable = false)
protected String peAddrCd;
エンティティ
@Entity
public class IfasvVendor implements Serializable {
@EmbeddedId
private IfasvVendorPK ifasvVendorPK;
クエリ
リスト2つのPKSが含まれています。私はこれのためのリストを使用する必要があるかどうか分からない。
Query query = session.createQuery("from IfasvVendor t0 where t0.ifasvVendorPK.peId=:id");
query.setParameter("id", list);
query.list();
また、クエリが機能したらオブジェクトを取得する方法もわかりませんでした。
これはコンポジットキーのクエリではなく、コンポジットキーの属性で検索しています。これが達成しようとしていることを確認してください。どのような場合でも、属性のリストを渡すと仮定すると、あなたの現在のクエリは間違っています。これを代わりに使う - 'IfasvVendor t0からどこにt0.ifasvVendorPK.peId:idList'と' query.setParameter( "idList"、list) 'を使います。 – Perception