Java 使用hibernate criterian和值列表获取数据
我有这样的课 --地位等级-- 你怎么会这样Java 使用hibernate criterian和值列表获取数据,java,hibernate,Java,Hibernate,我有这样的课 --地位等级-- 你怎么会这样 Criteria criteria = session.createCriteria(Item.class) .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); criteria.createAlias("statuses", "statuses"); criteria.add(Restrictions.eq("statuses.name", "OK")); Lis
Criteria criteria = session.createCriteria(Item.class)
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
criteria.createAlias("statuses", "statuses");
criteria.add(Restrictions.eq("statuses.name", "OK"));
List<Item> items = criteria.list();
Criteria=session.createCriteria(Item.class)
.setResultTransformer(标准.DISTINCT\u ROOT\u实体);
createAlias(“状态”、“状态”);
添加(Restrictions.eq(“status.name”、“OK”));
列表项=条件。列表();
您是如何表示状态OK的。。?是名称='OK'还是id=1@ManuPK使用名称感谢它可以正常工作,还有一个问题我可以向不同的表添加更多的createAlias
,您可以使用createAlias
建立关系。例如criteria.createAlias(“a.b.name”、“bName”)代码>这里是
public class Item implements java.io.Serializable {
private Integer itemId;
private Set<Status> statuses = new HashSet<Status>(0);
}
Status status = new Status();
Set<Status> stset = new HashSet<Status>();
stset.add(status)
List<Criterion> criterionList = new ArrayList<Criterion>();
criterionList.add(Restrictions.in("statuses", stset));
Criteria criteria = session.createCriteria(Item.class)
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
criteria.createAlias("statuses", "statuses");
criteria.add(Restrictions.eq("statuses.name", "OK"));
List<Item> items = criteria.list();