【问题标题】:How do you map a base class using ColdFusion ORM?如何使用 ColdFusion ORM 映射基类?
【发布时间】:2011-08-09 06:24:29
【问题描述】:

我有两个组件,一个基础Entity 组件:

<cfcomponent persistent="true">
    <cfproperty name="Id" fieldtype="id" generator="native">
</cfcomponent>

还有一个扩展它的 Client 组件:

<cfcomponent persistent="true" extends="Entity">
    <cfproperty name="FirstName">
    <cfproperty name="LastName">
</cfcomponent>

但是,当我尝试创建 Client 的实例时,我收到一条错误消息,指出它们被映射为两个不同的表。我知道 Hibernate 有能力忽略一个基类,但是我将如何使用 ColdFusion 的标签来做到这一点,还是我必须回退到 HBM 映射来实现这个功能?

附录:从Entity 中删除persistent="true" 也不起作用,如果我这样做,Client 将表现得好像它没有Id 属性一样。

【问题讨论】:

    标签: hibernate nhibernate orm coldfusion coldfusion-9


    【解决方案1】:

    在您的基础“实体”类中,尝试删除 persistent="true" 并添加 mappedSuperClass="true"。

    <cfcomponent mappedSuperClass="true">
        <cfproperty name="Id" fieldtype="id" generator="native">
    </cfcomponent>
    

    您需要将 9.0.1 更新应用到 ColdFusion。

    【讨论】:

    • 确保在进行更改后使用 ORMReload()。
    猜你喜欢
    • 1970-01-01
    • 2012-01-30
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    • 1970-01-01
    • 2012-08-17
    • 1970-01-01
    • 2011-11-14
    相关资源
    最近更新 更多