`

[转]集合类型和结果集排序

阅读更多
言归正传,Hibernate中的Collection类型分为有序集和无序集两类。这里所谓的有序和无序,是针对Hibernate数据持久过程中,是否保持数据集合中的记录排列顺序加以区分的。无序集有Set,Bag,Map几种,有序集有List一种。有序集的数据在持久化过程中,会将集合中元素排列的先后顺序同时固化到数据库中,读取时也会返回一个具备同样排列顺序的数据集合。
      Hibernate中的Collection类型是用的自己的实现,所以在程序中,不能够把接口强制转化成相应的JDK Collection的实现。


      结果集的排序有两种方式:
      1. Sort
         Collection中的数据排序。
      2. order-by
         对数据库执行Select SQL时,由order by子句实现的数据排序方式。

      需要注意的是,order-by特性在实现中借助了JDK 1.4中的新增集合类LinkedHashSet以及LinkedHashMap。因此,order-by特性只支持在1.4版本以上的JDK中运行。
分享到:
评论

相关推荐

    组合数学 r集排序

    r集排序的核心思想是将集合分为若干个大小为r的子集(r通常小于n),然后对每个子集进行排序,最后再合并这些排序后的子集,形成全局的排序结果。 为了实现r集排序,我们首先需要确定如何划分集合和如何对子集进行...

    集合对象排序

    当我们处理包含多个元素的数据集,如数组、列表或集合时,排序能够帮助我们快速查找、分析和展示信息。本文将深入探讨如何对对象进行排序,特别关注在实际应用中的下拉菜单排序和规律性数据排列。 首先,我们要理解...

    Java集合排序及java集合类详解

    Java集合框架是Java编程语言中的一个核心组成部分,它为数据存储和操作提供了丰富的接口和类。在本篇中,我们将深入...在实际工作中,可以根据实际需求选择不同的集合类型,结合排序功能,优化程序的性能和用户体验。

    Java集合排序及java集合类详解.pdf

    在实际开发过程中,根据具体需求选择合适的集合类型是非常重要的。例如: - 如果需要快速查找和修改元素,可以选择ArrayList。 - 如果需要频繁地插入和删除元素,可以选择LinkedList。 - 如果需要存储键值对数据,...

    易语言字节集与字节数组快速互转

    本文将深入探讨易语言中的字节集(ByteSet)与字节数组(ByteArray)之间的快速互转,以及相关的源码实现和应用。 字节集是易语言中用于存储一系列字节的数据类型,它通常用于处理二进制数据,如读写文件、网络通信...

    net常用排序存储过程合集

    在.NET开发中,排序是日常工作中不可或缺的一部分,无论是对数据集合进行操作,还是处理数据库查询结果,都需要用到各种排序算法。存储过程则是数据库管理中用于执行特定任务的预编译SQL语句集,它可以提高数据库...

    解析复杂结果集解析复杂结果集

    4. **分组与排序(GROUP BY & ORDER BY)**:通过对结果集进行分组和排序,可以对数据进行更精细的分析,如计算每个类别下的总销售额,按销售额降序排列等。 5. **窗口函数(Window Functions)**:如RANK、ROW_...

    高清文字版 - Objc 中国 - 集合类型优化

    - **动态调整**:集合类型应当支持在保持排序的同时添加或删除元素的操作。 #### 1.4 打印有序集合 为了便于调试和测试,通常还需要实现一种方法来打印有序集合的内容。这可以通过遍历集合并输出每个元素来实现。...

    Dictionary排序

    另外,性能也是需要考虑的因素,因为字典排序可能会涉及大量数据的复制和比较操作,所以优化排序算法对于大数据集非常重要。 为了更深入地理解这些方法,你需要查看源代码文件,特别是`CustomOtherSort.cs`和`...

    数据结构中查找和排序算法实验报告

    归并排序是一种采用分治策略的排序算法,其基本思想是将待排序的数据分成越来越小的子集,直至每个子集中只有一个元素,然后再将这些子集合并成较大的有序子集,最终得到完全排序的集合。 #### 分析 1. **时间...

    oracle处理的类型 oracle行排序

    此外,Oracle还提供了复杂的结构化数据类型,如对象类型、复合类型、嵌套表和集合类型,使得数据库能够处理更复杂的数据结构。 对于行排序,Oracle提供了ORDER BY子句,这是SQL查询语句的一部分,用于指定结果集的...

    C++排序算法全集.rar

    《C++排序算法全集》是一个集合了多种排序算法实现的资源包,主要面向学习和研究C++编程语言以及算法的读者。在这个压缩包中,包含了一份名为"C++排序算法全集.pdf"的文档,该文档详细介绍了各种排序算法在C++中的...

    JS控制分类排序

    "JS控制分类排序"是网页开发中的一个常见需求,尤其是在处理大量的数据集合时,比如商品目录、文章列表或者用户信息等。这种功能能够帮助用户更高效地查找和浏览信息。 1. **基础概念**: - **数组排序**:...

    易语言排序去重复

    在易语言中处理数据排序和去除重复元素是一项常见的任务,尤其在处理大量数据时。本篇文章将详细探讨易语言中实现排序去重复的方法。 一、易语言排序 1. 易语言的数组操作:在易语言中,可以使用数组来存储数据,...

    内存排序 代码 算法

    在这个文档集合中,我们可能会看到一个名为"sort_compare.doc"的文件,它很可能包含了不同排序算法的代码实现和性能分析。 内存排序算法主要包括以下几种常见的类型: 1. 冒泡排序:这是一种简单的排序方法,通过...

    增加C语言字符串处理和集合类型数据结构、算法的纯C库.zip

    5. 树结构(Tree):如二叉树、红黑树等,用于高效地进行排序和搜索操作。 6. 集合(Set):不包含重复元素的容器,支持基本的集合运算如交集、并集和差集。 此外,库中可能还包含各种算法实现,如排序算法(快速...

    android 表格 排序 源码

    首先,我们需要创建一个自定义的Adapter,它负责将数据模型(通常是ArrayList或其他集合类型)与视图绑定。这个Adapter需要知道如何绘制每一行,并且需要包含排序功能。 3. **数据模型**: 定义一个数据模型类,...

    java List 排序 Collections.sort

    对于大型数据集,`Collections.sort()`通常能提供很好的性能,但如果需要对大量不可变对象或已排序的列表进行排序,使用`TreeSet`或`LinkedHashSet`等集合类型可能会更高效,因为它们在底层实现了红黑树结构,插入和...

Global site tag (gtag.js) - Google Analytics