hibernate关联数据作为查询条件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate关联数据作为查询条件相关的知识,希望对你有一定的参考价值。
hibernate中,在前台当表关联的数据作为查询条件时,因为hibernate只接受能识别的属性(即在对应的hbm.xml文件中能找到的属性),如果没有,则在后台实现类中的hql中需要用别名进行查询:
前台页面:
后台的查询hql:
if(gqm.getGtm() != null &&
gqm.getGtm().getSm() != null &&
gqm.getGtm().getSm().getUuid() != null &&
gqm.getGtm().getSm().getUuid() != -1){
dc.createAlias("gtm", "g");
dc.createAlias("g.sm", "s");
dc.add(Restrictions.eq("s.uuid", gqm.getGtm().getSm().getUuid()));
}
别名的另外一种写法:
am a
a.bm ab
ab.cm abc
abc.dm abcd
abcd.name
以上是关于hibernate关联数据作为查询条件的主要内容,如果未能解决你的问题,请参考以下文章
“ java.lang.NoClassDefFoundError:javax / persistence / criteria / Selection”在JavaEE Maven项目中使用Hibern