论坛首页 Java企业应用论坛

Hibernate2.0中的排序问题,达人进

浏览 1279 次
该帖已经被评为隐藏帖
作者 正文
   发表时间:2008-05-16  
表关系如下:
   T_USER (id, user_name) 用户表
   T_USER_ROLE (user_id , role_id ) 用户角色对应表
   T_ROLE (id, role_name) 角色表

在创建用户对象时,根据当前的用户ID,获取用户所关联的角色对象
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 2.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">

<hibernate-mapping
>
    <class
        name="com.volcano.metadata.model.UserEntity"
        table="T_USER"
        dynamic-update="false"
        dynamic-insert="false"
        select-before-update="false"
        optimistic-lock="version"
    >

        <id
            name="id"
            column="id"
            type="long"
            unsaved-value="0"
        >
            <generator class="seqhilo">
              <!-- 
                  To add non XDoclet generator parameters, create a file named
                  hibernate-generator-params-UserEntity.xml
                  containing the additional parameters and place it in your merge dir.
              -->
            </generator>
        </id>

        <set
            name="roles"
            table="T_USER_ROLE"
            lazy="false"
            inverse="false"
            cascade="none"
            sort="unsorted"
        >

              <key
                  column="USER_ID"
              >
              </key>

              <many-to-many
                  class="com.volcano.metadata.model.RoleEntity"
                  column="ROLE_ID"
                  outer-join="auto"
               />

        </set>

         <property
            name="name"
            type="java.lang.String"
            update="true"
            insert="true"
            access="property"
            column="USER_NAME"
            length="32"
            not-null="true"
        />

    </class>

</hibernate-mapping>


配置文件如下,现此功能实现是没有问题的, 但返回的ROLES对象的结果集没有排序,现在我想要对此结果集的名称(ROLE_NAME)进行排序, 我应该怎么配置?

注意:我的物理表中,USER表的中字段叫NAME,ROLE表的字段也叫NAME
我在指定ORDER-BY或者SORT的时候,怎么让他指定的ROLE表中的NAME?  而不是USER表中的NAME

请指点,谢谢!
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics