每个人。我是使用 Hibernate 的新手。
所以在这里我面临一个问题,我有一个如下实体:
<class name="cn.edu.scau.librarica.dao.MessageSession" table="msg_session">
<id name="msid" type="long" unsaved-value="null">
<generator class="identity"/>
</id>
<list name="msgs" cascade="all">
<key column="msid"
update="false" unique="true" not-null="true"/>
<list-index column="list_index"/>
<one-to-many class="Message" />
</list>
</class>
现在我想要实现的是:
select Message m where msid=# and m.t<## and m.t>###
我如何用 Criteria 来表示它?
提前感谢您的关注和建议。
更新
作为答案指南之一,我得到了复合元素不可查询的观点,所以我制作了一个双向的一对多映射(上面已更改)现在我可以查询但现在我发现了另一个问题:
我怎样才能用外键映射复合ID
Message
是这样的映射:
<class name="Message">
<composite-id>
<generator class="foreign">
<!-- What here??? -->
</generator>
</composite-id>
</class>
按照指示,一对多可以使用set
而不是list
,所以我很难找到满足我需要的样本(由于应该订购消息)。
有什么建议吗?我还在寻找那个。感谢帮助。