Hibernate Set排序
2014-01-09 22:45:46  By: dwtedx

大家都知道one-to-many的排序可以通过配置一个order-by="** desc"即可实现

如代码

<set name="clubMessage" table="club_Message" inverse="true"cascade="delete" order-by="create_time desc"> 
    <key column="club_id" /> 
    <one-to-many class="com.test.item.club.domain.ClubMessageVO" /> 
</set>


上面的hbm属性意义是:一个社区对应多条社区消息、同时将这些消息按create_time排序

Java代码

import java.util.Comparator; 
   
import my.User; 
   
public class GBComparator implements Comparator{ 
   
    public int compare(Object o1, Object o2){ 
        if(o1 == null){ 
            return o2 == null ? 0 : 1; 
        } 
        if(o2 == null){ 
            return -1; 
        } 
            
        if(o1 instanceof User && o2 instanceof User){ 
            return ((User)o1).getAccount().compareTo(((User)o2).getAccount()); 
        } 
            
        return 0; 
    } 
} 


Xml代码

<set 
    name="users" 
    table="USER_GROUP_REL" 
    cascade="none" 
    inverse="true" 
    sort="my.GBComparator"> 
    <key column="GROUPING_ID" /> 
    <many-to-many column="USER_ID" class="User" /> 
</set>


若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

  • 该技术还没有评论、赶快抢沙发吧...
DD记账
top
+