一:注解
http://www.iteye.com/topic/142677
@OneToMany(mappedBy="user",fetch=FetchType.EAGER)
@OrderBy(name = "tel_id DESC")
public Set<Tel> getTels() {
return tels;
}
谢谢各位,我已经解决了,
我翻看了文档,
orderby的方式对list是有效的
set和map用mapkey
我把set改为list了,用了orderby就能排序了。
谢谢你们了。
二:非注解:
http://uule.iteye.com/blog/1046723
一对多里面对 set 的排序,建议采用以下办法:
1、首先,将POJO 中的 set 成员的类型改为 TreeSet 类型,因为 TreeSet 是实现了 SortedSet 的可排序集合类。
private Set labproductflowinfos = new TreeSet(new FlowInfoComparator());//为 TreeSet 提供一个自定义的比较器
然后修改配置文件,为<set> 添加 sort 属性,属性取值可以为一个自定义的比较器。如下:
public class FlowInfoComparator implements Comparator {
public int compare(Object o1, Object o2) {
if(o1 instanceof Labproductflowinfo &&
o2 instanceof Labproductflowinfo){
Integer s1 = ((Labproductflowinfo)o1).getSequenceNum();
Integer s2 = ((Labproductflowinfo)o2).getSequenceNum();
return s1.intValue() - s2.intValue();
}
return 0;
}}
<set name="labproductflowinfos" inverse="true"
cascade="all-delete-orphan" lazy="false" sort="com.zsc.hibernate.FlowInfoComparator">
2、第三种方式比较简单就是在hbm配置文件里配置采取排序的序列。<set ... order-by="date asc" />第一个参数是选择排序的序列,第二个参数是升序还是降序。
分享到:
相关推荐
在Java的持久化框架Hibernate中,一对多关系是常见的实体关联类型,表示一个实体可以与多个其他实体相关联。在处理这种关系时,我们通常会使用`Set`或`List`作为关联集合的容器。本篇文章将深入探讨`Hibernate`中一...
在Hibernate的XML映射文件中,我们可以使用`<set>`、`<list>`、`<map>`或`<bag>`元素来表示一对多关系。以用户和订单为例,`User`类对应一个`Order`类的集合: ```xml <!-- User.hbm.xml --> <set name="orders" ...
本文主要探讨的是Hibernate中的一对多关联映射,这是一种常见的关系数据库模型,用于表示实体间一对多的关系。 一对多关联映射在Hibernate中意味着一个实体(比如一个部门)可以与多个其他实体(如部门下的员工)相...
在一个实体类中,如果有一个`Set`类型的属性,代表一对多关系,可以将这个`Set`的实现类型改为`TreeSet`。`TreeSet`是Java集合框架中的一个有序集合,它实现了`SortedSet`接口,可以自动保持元素的排序顺序。为了...
例如,如果我们有一个名为`Article`的实体类,其中包含一个`title`字段,我们可以使用`@org.hibernate.annotations.OrderBy`注解来指定排序规则: ```java @Entity public class Article { @Id private Long id; ...
3. **关联映射**:集合映射通常涉及到两个实体之间的关联,如一对一(@OneToOne)、一对多(@OneToMany)、多对一(@ManyToOne)和多对多(@ManyToMany)关系。 4. **集合属性映射**:在实体类中,集合属性需要使用...
15.3.4 把多对多关联分解为两个一对多关联 15.4 小结 15.5 思考题 第16章 Hibernate的检索策略 16.1 Hibernate的检索策略简介 16.2 类级别的检索策略 16.2.1 立即检索 16.2.2 延迟检索 16.3 一对多...
本篇文章主要探讨的是Hibernate中的一对多关联映射,这是一种常见的对象关系映射(ORM)配置,用于表示一个实体与多个其他实体之间的关系。 在关系型数据库中,一对多关联是指一个表(父表)中的记录可以对应另一个...
标题 "Hibernate一对多关联" 涉及到的是Java持久化框架Hibernate中的一个重要关系映射概念,这在开发企业级应用时非常常见。在数据库设计中,一对多关系表示一个表(父表)中的记录可以与另一个表(子表)中的多个...
**标题:“Hibernate 一对多关联”** 在Java的持久化框架Hibernate中,一对多关联是一种常见的关系映射,它模拟了数据库中的外键关联。这种关联类型表示一个实体(如用户)可以拥有多个关联的实体(如订单)。下面...
15.3.4 把多对多关联分解为两个一对多关联 15.4 小结 15.5 思考题 第16章 Hibernate的检索策略 16.1 Hibernate的检索策略简介 16.2 类级别的检索策略 16.2.1 立即检索 16.2.2 延迟检索 16.3 一对多...
15.3.4 把多对多关联分解为两个一对多关联 15.4 小结 15.5 思考题 第16章 Hibernate的检索策略 16.1 Hibernate的检索策略简介 16.2 类级别的检索策略 16.2.1 立即检索 16.2.2 延迟检索 16.3 一对多...
15.3.4 把多对多关联分解为两个一对多关联 15.4 小结 15.5 思考题 第16章 Hibernate的检索策略 16.1 Hibernate的检索策略简介 16.2 类级别的检索策略 16.2.1 立即检索 16.2.2 延迟检索 16.3 一对多...
本文将深入探讨“Hibernate自身关联一对多实例(树形结构)”这一主题,这在构建具有层次结构的数据模型时尤其常见,例如组织结构、地区树或者商品分类等。 首先,我们需要理解Hibernate的核心概念。Hibernate允许...
- **标题**:“hibernate criteria 分组 排序 关联”这一标题明确了本文将围绕Hibernate Criteria API进行分组、排序以及关联查询的具体应用进行讨论。 - **描述**:描述部分重复了标题的内容,进一步强调了本文的...
10. **一对多、多对一、一对一和多对多关系映射**:Hibernate支持多种关联映射,包括集合映射,如List、Set、Map等,以及复合主键的处理。 11. **继承映射**:在Java中,子类可以继承父类。在Hibernate中,这种继承...
- Hibernate支持多种关系映射,本章将深入讲解一对一、一对多和多对一的关系配置,包括集合类型的选择(List, Set, Map等)和级联操作的设置。 4. **Chapter 9:多对多关系映射** - 多对多关系在数据库设计中常见...
对于一对多的关系,可以使用`@OneToMany(fetch = FetchType.EAGER)`或`@ManyToOne(fetch = FetchType.EAGER)`来指定。然而,过度使用急加载可能会导致性能下降,因为它会增加初始查询的复杂性和数据量。 2. Batch ...