软件编程
位置:首页>> 软件编程>> java编程>> Spring Data JPA 设置字段默认值方式

Spring Data JPA 设置字段默认值方式

作者:weixin_42475367  发布时间:2021-08-13 07:27:06 

标签:Spring,Data,JPA,字段,默认值

Spring Data JPA设置字段默认值

在Column注解中写入以下两个属性,为什么自己查一下文档吧,即可实现字段默认值设置,并顺带解决save方法所生成的sql语句中自动填充字段为null的问题。

默认值无法更新,所以如果想在代码里修改字段默认值,你需要重新建表。


@Column(insertable = false,columnDefinition = "int default 1")
   private Integer sex;    
@Column(insertable = false,columnDefinition = "decimal(19,2) DEFAULT 0.00")
   private BigDecimal accountBalance;//账户余额

columnDefinition = “相当于数据库的creter table DDL 语句”


CREATE TABLE `account_info` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 。。。
 。。。
 `account_balance` decimal(19,2) DEFAULT '0.00',
 。。。
 。。。
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

Spring Data JPA设置字段默认值失败

jpa注解设置默认值用到的注解是@Column。但有一个问题就是,如果你已经建立好了表,然后在加上@Column(insertable = false,columnDefinition = “int default 1”)是没有用,因为这个注解只有在建表时才会起作用,也就是说,如果DB中表已经建好,该属性没有必要使用


@Column(columnDefinition=“int default 1”,nullable=false)
private int number;

所以最好是在save()或者update()写入时增加逻辑操作

来源:https://blog.csdn.net/weixin_42475367/article/details/103035504

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com