我有两个组件,一个基本的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映射才能使用此功能?

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

最佳答案

在您的基本“Entity”类中,尝试删除persistent =“true”并添加mappedSuperClass =“true”。

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

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

关于hibernate - 您如何使用ColdFusion ORM映射基类?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6992178/

10-10 10:30