我在.hbm文件中设置了这个。
<set name="subTopicsTb" table="subtopics_tb" inverse="true" lazy="false" fetch="select">
<key>
<column name="topic_id" />
</key>
<one-to-many class="com.topics.model.SubTopics" />
</set>
现在,默认情况下,hibernate得到了topic_id为id的所有子主题。 我想过滤子主题。添加类似于subTopics.date的地方感谢
答案 0 :(得分:2)
这实际上有效,数据库中的列名是date
。 where
中的set
属性会将原始sql 附加到您的查询中,因此您必须指定数据库中的 NOT HQL :< / p>
<set name="subTopicsTb" table="subtopics_tb" inverse="true" lazy="false"
fetch="select" where="date is not null">
<key>
<column name="topic_id" />
</key>
<one-to-many class="com.topics.model.SubTopics" />
</set>
答案 1 :(得分:1)
添加where子句?我不知道你是如何在XML配置中设置它的。但你可以查看注释版本here。
我在stackoverflow找到了关于如何添加XML的位置的内容。
答案 2 :(得分:0)
您使用HQL检索SubTopics吗?如果是这样,您可以在选择中包含过滤器。例如:
String query = "FROM SubTopic subtopic WHERE subtopic.date != null"