刚刚脑抽了,以为设置了默认值就是不为空的了,我是这么想的嘛,反正有了默认值就不会是为空了,但是没有想到后期可能会修改为空。所以如果要那种有默认值而且不为空的字段就需要这样设置
@Column(name="user_age", columnDefinition="INT default 16",nullable=false)
意思是这个属性对应user_age字段,它的默认值是16,不能为空
但是我们在写实体类的时候就算age默认为16,new 一个user的时候如果你不指定age的值他还是会为0的。所以可以在实体类里面加上
private int age = 16;
这样才可以new一个user的时候默认age为16