hibernate中使用@Column中的columnDefinition设置默认值,但是还可以为空和设置了默认值但没有效果

2023-02-07 17:36:42

刚刚脑抽了,以为设置了默认值就是不为空的了,我是这么想的嘛,反正有了默认值就不会是为空了,但是没有想到后期可能会修改为空。所以如果要那种有默认值而且不为空的字段就需要这样设置

@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



  • 作者:_Slience_
  • 原文链接:https://slience.blog.csdn.net/article/details/51003037
    更新时间:2023-02-07 17:36:42