Hibernate 注解:一、多对多中set集合按指定字段排序

java 专栏收录该内容
18 篇文章 0 订阅

最简单的方法是在配置文件中设置,利用配置文件中的order-by 属性来处理

 

 
  1. <hibernate-mapping>

  2. <class name="com.adcourse.form.Topics" table="tb_topics">

  3. <id name="id" column="id" type="int">

  4. <generator class="increment"/>

  5. </id>

  6.  
  7. <set name="reply" order-by="datetime asc" inverse="true" cascade="all" lazy="false" >

  8. <key column="topics_id"></key>

  9. <one-to-many class="com.adcourse.form.Reply"/>

  10. </set>

  11. </class>

  12. </hibernate-mapping>

  13.  
  14. <hibernate-mapping>

  15. <class name="com.adcourse.form.Reply" table="tb_reply">

  16. <id name="id" column="id" type="int">

  17. <generator class="increment"/>

  18. </id>

  19. <property name="rdatetime" column="datetime" type="java.util.Date" not-null="true"/>

  20. <many-to-one name="topic" column="topics_id" class="com.adcourse.form.Topics" />

  21. </class>

  22. </hibernate-mapping>


上面在一的一端查询出来的set 里面的记录根据 detetime 的升序来排列,注意:是datetime 不是rdatetime

对于注解形式,可以采用

import javax.persistence.OrderBy;

@OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.LAZY, mappedBy = "tblStudyType")
@OrderBy("lessonId ASC")
public Set<TblStudyLesson> getTblStudyLessons() {
return this.tblStudyLessons;
}

的方式来配置set的顺序

  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

一味前行

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值