多対多リレーションシップでは2つのクラスがありますが、どちらか一方だけにリストがあります。Hibernate noob:マッピングされていない関係をフェッチする基準
@Entity
public class Product{
@ManyToMany
List<Category> categories;
//...
}
@Entity
public class Category{
//...
}
基準を使用してカテゴリに関連するすべての商品を検索したいが、以下は機能しません。製品がカテゴリーにマッピングされた場合は、本当に単純なこと、しかし確実にあなたはそれなしで、このようなクエリを実行してみましょう休止状態でしょう。もちろん、
import static java.util.Collections.singletonList;
List<Product> getProductsByCategory(Category category){
List<Product> results = getCurrentSession()
.createCriteria(Product.class)
.add(Restrictions.in("categories", singletonList(category)))
.list();
if (results == null || results.size() <= 0)
throw new EntityNotFoundException(category + "is empty");
return results;
}
。
EDIT:
これは、Oracleエラーに任意の助け
Caused by: java.sql.SQLException: Missing IN or OUT parameter at index:: 1
感謝を返します!
エラーが発生しましたか、予期した結果が返されませんでしたか?エラーの場合、どのようなエラー? – yair