我有一个带有连接表的一对多映射。
class service{private Long service_id}
class codes{private Long code_id}
服务和代码类被设置为休眠实体,并且它们的 id 具有修改器。
连接表
table servicecodes
(serviceid,
codeid);
我的服务类映射:
<class name="path.to.Service" table="SERVICE"
lazy="false">
<set name="sc" table="ServiceCodes">
<key column="serviceid"/>
<many-to-many column="codeid" unique="true"
class="path.to.Codes"/>
</set>
</class>
在我的应用层中,我有:
serviceobj.set(Set<Codes>);
...
session.save(serviceobj);
在 session.save 行,抛出以下错误:
org.hibernate.PropertyAccessException: could not get a field value by reflection getter of path.to.Codes.code_id
....
Caused by: java.lang.IllegalArgumentException: Can not set java.lang.Long field path.to.Codes.code_id to java.lang.String