Ren*_*erl 5 java xml sql-server hibernate hibernate-mapping
我陷入了 hibernate xml 映射配置的困境。
我在 MSSQL 数据库中建立了一些带有外键约束的表:
Table ItemsBase
ID int primary-key
ItemID int unique index
... some more columns
Table Others
ID int primary-key
ItemID int unique index
... some more columns
Run Code Online (Sandbox Code Playgroud)
外键约束配置为使用“ItemID”列连接这两个表。
我的 ItemsBase.hbm.xml 文件如下所示:
<hibernate-mapping>
<class name="de.delife.sql.ItemsBase" table="ItemsBase" schema="dbo" catalog="Delife_Plenty">
<id name="id" type="int">
<column name="ID" />
<generator class="assigned" />
</id>
<property name="itemId" type="java.lang.Integer">
<column name="ItemID" unique="true" />
</property>
<set name="otherses" table="Others" inverse="true" lazy="true" fetch="select">
<key property-ref="itemId">
<column name="ItemID" />
</key>
<one-to-many class="de.delife.sql.Others" not-found="ignore" />
</set>
</class>
</hibernate-mapping>
Run Code Online (Sandbox Code Playgroud)
Others.hbm.xml 文件如下所示:
<hibernate-mapping>
<class name="de.delife.sql.Others" table="Others" schema="dbo" catalog="Delife_Plenty">
<id name="id" type="int">
<column name="ID" />
<generator class="assigned" />
</id>
<many-to-one name="itemsBase" class="de.delife.sql.ItemsBase" fetch="select" property-ref="itemId">
<column name="ItemID" unique="true" />
</many-to-one>
</class>
</hibernate-mapping>
Run Code Online (Sandbox Code Playgroud)
一切对我来说看起来都很好,但是当我运行我的程序时,我收到一个休眠错误:
property [itemId] not found on entity [de.delife.sql.Others]
Run Code Online (Sandbox Code Playgroud)
我在 ItemsBase 和名为 ItemsProperties 的表之间建立了关系,并且它可以工作,但是对于这个“漂亮”表“Others”,我陷入了困境。
如果有人能在这件事上帮助我,我会很高兴。提前谢谢。
项目 id 应定义为 Others.hbm.xml 中的属性:
<property name="itemId" column="ItemId"/>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9251 次 |
最近记录: |