hibernate执行hql语句进行查询时,如果实体类有子类不仅会查询该类而且也会查询子类(子类在hbm中进行了配置)

 标题描述中出现的这种情况,在hibernate中成为继承查询,这确实让人很烦恼,要想取消继承查询,需要在hbm配置文件中的class节点配置polymorphism属性,默认为implicit表示进行继承查询,如果不想使用继承查询,则只需要将值设置为explicit,表示不进行继承查询,就像下面这样:

<class table="tableName" name="className" polymorphism="explicit" >
....
</class>

你可能感兴趣的:(Hibernate,HQL,多态)