错误信息如下:
原因:
hibernate要求必须有主键,我就设置id为主键,类型Integer,我在数据库里面设置主键是自增的
但是在用户类的映射文件中,我设置id的属性是
<id name="id" column="id" length="255" type="integer">
<generator class="assigned"></generator>
</id>
<generator>表示一个主键的生成机制
生成方式包括:
- increment:生成long, short或者int类型的主键,不能在cluster环境下使用。适用于所有数据库
- identity:生成long, short或者int类型的主键。
- sequence :生成long, short或者int类型的主键。
- class="assigned"说明主键是自己定的,不是数据库生成的,用户注册的帐号一般就属于这种类型。
- native:根据具体连接的数据库从identity, sequence或者hilo选择一种来生成主键。适用的数据库根据选择的生成方式确定。
解决的方式:
<generator class="native"></generator>