需求:數據庫設計的表中有createtime和updatetime兩個字段,①新增時createtime和updatetime默認賦值當前時間,②修改是updatetime賦值為當前時間
①新增時兩個時間的默認值可以通過數據庫設置默認值解決
②修改時updatetime的賦值遇到了一點坑
首先百度到mybatisplus官方手冊,自動填充功能,貌似能解決我的問題,https://mp.baomidou.com/guide/auto-fill-metainfo.html
但是經過一番測試下來,修改時updatetime並沒有更新,為毛呢,原來更新的數據是由之前查詢而來,既然是查詢而來,那updatetime自然是有值的,所以填充失敗,自動填充功能只針對為null時才會填充
繼續百度唄,還真找到了另一個解決方案
@ApiModelProperty(value = "修改時間") @TableField(value = "update_time",update = "now()") private LocalDateTime updateTime;
所以一句 @TableField(value = "update_time",update = "now()")解決問題,但是我用的是mysql,沒有測試過其他數據庫是否能成,用過的大佬可以分享一下