您的位置:首页 > 产品设计 > UI/UE

Field 'id' doesn't have a default value

2018-01-15 11:13 337 查看
Field 'id' doesn't have a default value

意思是“id”没有一个默认值

原因

因为主键生成策略为:<generator class="native" />

native代表什么呢?

根据底层数据库的能力选择 identity、sequence 或者 hilo 中的一个;

identity :自增,由数据库生成,返回的标识符是long, short或int类型的。(主要用在mysql中)

sequence :根据数据库序列生成标识符,返回的标识符是long, short或者int类型的。

hilo     :使用一个高/低位算法来高效的生成long,short或者int类型的标识符。

而数据库的主键类型为:varchar

将hibernate主键生成策略改成uuid

uuid.hex/uuid :用一个128-bit的UUID算法生成32位字符串类型的标识符。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: