论坛首页 Java企业应用论坛

hibernate 继承映射 多态查询 部分过滤查询 sql语句中clazz_ 序号问题

浏览 1775 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-05-16  
项目中使用到了继承映射,在直接对父类进行查询时hibernate会生成一个clazz_参数作为返回的class标识,问题是如果想要查询部分子类而不是全部查询时怎么屏蔽掉不需要的。
例如B,C,D继承自A ,可以发送from A a where a.class=? or a.class=?
将问号处设置一个int值,此值来自hibernate的Classmetadata
具体方法是
SessionFactory sf;
((UnionSubclassEntityPersister)sf.getClassMetadata(B.class)).getDiscriminatorSQLValue()可以获得类B对应的int值。
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics