在hibernate xml映射中映射没有主键的数据库视图

时间:2013-04-05 09:03:46

标签: hibernate model-view-controller spring-mvc hibernate-mapping hbmxml

  

我创建了一个仅用于获取数据的视图(只读)

查看:Grid_View

>我的Hibernate hbm文件

<hibernate-mapping>   
     <class name="hibernate.domain.View" table="Grid_View" mutable="false">
         <property name="ACCT_BR_CD" type="string">
            <column name="ACCT_BR_CD"/>
        </property>
        <property name="ACCT_NO" type="string">
            <column name="ACCT_NO"/>
        </property>
        <property name="LGL_ENTY_NM" type="string">
            <column name="LGL_ENTY_NM"/>
        </property>
        <property name="CUST_CTRY_CD" type="string">
            <column name="CUST_CTRY_CD"/>
        </property>
        <property name="ACCT_SRC_SYS_CD" type="string">
            <column name="ACCT_SRC_SYS_CD"/>
        </property>    
    </class>
</hibernate-mapping>

&GT;因为在我的视图中它们不是主键,我在映射中没有提到id字段。       但是在hibernate中,id是必需的。

&GT;我的问题

如何在hibernate映射文件中继续没有id的映射。 并且它们没有具有独特价值的列,因此没有任何机会将它们作为关键。请帮我解决这个问题

1 个答案:

答案 0 :(得分:4)

您可以选择添加复合键或添加

两个选项
<id column="ROWID" type="string" />

Hibernate需要唯一的键来映射。最好的方法是添加主键。