Hibernate集合排序

1. 说明

        1)对于本来就有序的集合不能再排序,如List
        2)存在内存排序和数据库排序两种方式, 推荐使用数据库排序,效率更高

2. 数据库排序

        1)pojo中写法
       private Set<String> addressSet  = new TreeSet<String>()
               不能使用HashSet,必须使用能够排序的Set,如TreeSet或LinkedListSet
        2)映射文件
       <set name="addressSet" table="user_address_set" order-by="address DESC" >
             <key column="userId"/>
             <element type="string" column="address"/>
       </set>

            order-by标签中实际上就是sql中order by 语句后的内容

3. 内存排序

        1)映射文件
        <set name="addressSet" table="user_address_set" sort="natural">
            <key column="userId"/>
            <element type="string" column="address"/>
        </set>

         2) sort标签表示在内存中排完序再存储到数据库中
         3) sort可以取的值为: unsorted——不排序  
                                                    natural——使用默认的自然排序
                                                    类名——比较器的类名,根据比较器来排序


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值