总结一点给大家:
由于colnum的属性指定为数据表关联的外键,所以有:
在单向多对一配置文件中
<many-to-one name="publishers" column="PublisherId" class="com.hibtest2.entity.Publishers" lazy="false">
</many-to-one>
由于此映射文件是为主表写的,而主表是没有外键的,所以此处column的属性既可以写为主表的主键,也可以写为从表的外键。
而在单向一对多的配置文件中
<set name="bks" lazy="false">
<key column="PublisherId"/>
<one-to-many class="com.hibtest2.entity.Books"/>
</set>
此处是为从表添加映射,而从表是有外键的,所以此处的colnum的属性必须写为从表的外键。
亲测有效!