`

Hibernate_报错_duplicate association path

 
阅读更多
此代码:
Criteria criteria = DB.session().createCriteria(Document.class);
criteria.createCriteria("client").add(Restrictions.eq("id", 1));
criteria.createCriteria("client").addOrder(Order.asc("name"));
List list = criteria.list();

其中 client 为 Document 中的一个类属性

报如下错:
duplicate association path: client".

解决办法:

Criteria criteria = DB.session().createCriteria(Document.class);
criteria.createAlias("client", "client")
criteria.add(Restrictions.eq("client.id", 1));
criteria.addOrder(Order.asc("client.name"));
List list = criteria.list();

Grails 传入参数采用第一种,故在按照client.name作为查询条件的同时按照client.name排序会报错
采用如下办法可解决:
client{
  order("name","asc")
}
若为一个实体中的属性,直接:
order("name","asc")
即可
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics