当前位置:  开发笔记 > 编程语言 > 正文

在HQL where子句中使用对象类型

如何解决《在HQLwhere子句中使用对象类型》经验,为你挑选了1个好方法。

在我的域模型中,我有一个抽象类CommunicationChannelSpecification,它有子类,如FTPChannelSpecification,EMailChannelSpecification和WebserviceChannelSpecification.现在我想创建一个HQL查询,其中包含一个where子句,它将结果缩小到某些类型的通道规范.例如(用简单的英语)选择其类型出现在集合{FTPChannelSpecification,WebserviceChannelSpecification}中的所有CommunicationChannelSpecifications.

如何在HQL中实现这一目标?我正在使用NHibernate 2.0.1和每个子类的表继承映射策略...

谢谢!

帕斯卡尔



1> 小智..:

在NHibernate中并不积极,但在Hibernate中,有两个特殊的属性总是引用id和class.所以,对于你的特殊情况,我会这样做

from CommunicationChannelSpecifications spec where spec.class in (?)

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有