- 自動填充注解 @TableField
1.value
字段值(駝峰命名方式,該值可無)
2.update
預處理 set 字段自定義注入
3.condition
預處理 WHERE 實體條件自定義運算規則
4.el
詳看注釋說明
5.exist
是否為數據庫表字段( 默認 true 存在,false 不存在 )
6.strategy
字段驗證 ( 默認 非 null 判斷,查看 com.baomidou.mybatisplus.enums.FieldStrategy )
7.fill
字段填充標記 ( FieldFill, 配合自動填充使用 )
fill值
DEFAULT:默認不處理
INSERT:插入填充字段
UPDATE:更新填充字段
INSERT_UPDATE:插入和更新填充字段
實現
- 添加注解
2.實現元對象處理器接口: com.baomidou.mybatisplus.mapper.IMetaObjectHandler。詳見官網例子
這樣,我們在插入或者更新數據時,createTime 和 modifyTime 可以自動更新。
-
@TableId 主鍵注解
@KeySequence()設置自主Sequence
type 屬性:
AUTO:自增
NONE:該類型為未設置主鍵類型
INPUT:手動錄入
ID_WORKER:默認主鍵類型,全局唯一ID,Long類型的主鍵
UUID:自動生成uuid 插入
ID_WORKER_STR:字符串全局唯一ID
注:在mysql中也可以設置自增,若mysql中未設置自增,mybatis中設置 @TableId(value = "id", type = IdType.AUTO) 報:java.sql.SQLException: Field 'id' doesn't have a default value
若是主鍵id為UUID,可用此設置生成UUID主鍵。