Hibernate多次映射同一个类

来源:互联网 发布:新人程序员简历 编辑:程序博客网 时间:2024/06/02 16:37

对特定的持久化类,映射多次是允许的。这种情形下,你必须指定entity name来区别不同映射实体的对象实例。(默认情况下,实体名字和类名是相同的。) Hibernate在操作持久化对象、编写查询条件,或者把关联映射到指定实体时,允许你指定这个entity name(实体名字)。

<class name="Contract" table="Contracts"         entity-name="CurrentContract">    ...    <set name="history" inverse="true"             order-by="effectiveEndDate desc">        <key column="currentContractId"/>        <one-to-many entity-name="HistoricalContract"/>    </set></class><class name="Contract" table="ContractHistory"         entity-name="HistoricalContract">    ...    <many-to-one name="currentContract"             column="currentContractId"             entity-name="CurrentContract"/></class>

注意这里关联是如何用entity-name来代替class的。

原创粉丝点击