2 glory zhu Glory_zhu 于 2014.12.12 17:03 提问

property mapping has wrong number of columns 1C

运行Web程序时**错误提示**:org.hibernate.MappingException: property mapping has wrong number of columns: hotle.StaffFile.StaffPhoto type: object。。。
表StaffFile的列StaffPhoto字段在数据库中的类型为image,而在相应的实体类(StaffFile.java)中,对应变量类型为Object类型(即:public java.lang.Object StaffPhoto;)。初步理解是不能将
Object类型映射到数据库中的image类型。然后我在网上搜了一下,怎么映射image类型,说可以将Object改为Byte[]类型,然后在映射文件中将类型改为binary,但是仍然报出以上错误。我觉得实体类中变量StaffPhoto类型没有改变,仍然为Object类型。就调试了一下,追踪到StaffPhoto类型仍然为Object类型。
第一个问题:我明明已经将StaffPhoto的类型改为Byte[]了,为什么运行时类型仍然是Object呢?第二个问题:hibernate3如何映射Sql Server2008中的Image类型?
注意:hibernate代码使用PowerDesigner自动生成。附上StaffFile.hbm.xml映射文件:

 <property name="StaffPhoto"  insert="true" update="true" lazy="false" optimistic-lock="true">
<column name="StaffPhoto" sql-type="image" not-null="true"/>

求解。。。。只有1C币,抱歉!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!