欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MyBatis-Plus標(biāo)簽@TableField之fill自動填充方式

 更新時間:2022年06月17日 10:52:42   作者:weixin_46084802  
這篇文章主要介紹了MyBatis-Plus標(biāo)簽@TableField之fill自動填充方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@TableField之fill自動填充

mybatis-plus中

TableField映射非主鍵字段,value映射字段名,exist表示是否為數(shù)據(jù)庫字段,select表示是否查詢該字段,fill表示是否自動填充

實(shí)體類

@Data
public class User {
    @TableId(type = IdType.NONE)
    private Long id;
    private String userName;
    private String passWord;
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;
}

自動填充處理器

@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        this.setFieldValByName("createTime",new Date(),metaObject);
        this.setFieldValByName("updateTime",new Date(),metaObject);
    }
    @Override
    public void updateFill(MetaObject metaObject) {
        this.setFieldValByName("updateTime",new Date(),metaObject);
    }
}

MyBatis-Plus自動填充

mybatis-plus 自動填充公共字段

直接上代碼

首先我們要實(shí)現(xiàn)mybatis-plus的MetaObjectHandler接口,代碼如下: 

/**
?* @USER WSF
?* @DATE 2020/8/10 13:41
?**/
@SpringBootConfiguration
public class MetaObjectConfig implements MetaObjectHandler
{
? ? @Override
? ? public void insertFill(MetaObject metaObject) {
? ? ?? ?//拿到類是否有此字段
? ? ? ? boolean hasGetter = metaObject.hasGetter("createDate");
? ? ? ? if (hasGetter)
? ? ? ? {
? ? ? ? ? ? // this.strictInsertFill(metaObject,"字段名對應(yīng)你的實(shí)體類的字段名",String.class,"Value");
? ? ? ? ? ? this.strictInsertFill(metaObject,"createDate", LocalDateTime.class,LocalDateTime.now());
? ? ? ? }
? ? }
? ? @Override
? ? public void updateFill(MetaObject metaObject)
? ? {
? ? ? ? Object upDateTime = getFieldValByName("upDateTime", metaObject);
? ? ? ? if (upDateTime == null)
? ? ? ? {
? ? ? ? ? ? this.strictUpdateFill(metaObject,"upDate",LocalDateTime.class,LocalDateTime.now());
? ? ? ? }
? ? }
}

實(shí)體類

@Data
@TableName("t_user")
public class User {
? ??
? ? @TableId(type = IdType.AUTO)
? ? private Integer id;
? ??
? ? @TableField("user_name")
? ? private String username;
? ??
? ? @TableField("pass_word")
? ? private String password;
? ? /**
? ? ?* 如果要實(shí)現(xiàn)自動填充則加上
? ? ?* fill = FieldFill.INSERT新增時自動填充
? ? ?* fill = fill = FieldFill.INSERT_UPDATE新增和修改都自動填充
? ? ?* fill = FieldFill.DEFAULT 刪除時自動填充
? ? ?*/
? ? @TableField(value = "crate_date",fill = FieldFill.INSERT)
? ? private LocalDateTime createDate; ?//新增時間 ?
? ??
? ? @TableField(value = "up_name",fill = FieldFill.UPDATE)
? ? private String upName; ?//更新人
? ??
? ? // ...................
}

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。 

相關(guān)文章

  • Mybatis-Plus自動填充的實(shí)現(xiàn)示例

    Mybatis-Plus自動填充的實(shí)現(xiàn)示例

    這篇文章主要介紹了Mybatis-Plus自動填充的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Java異步調(diào)用轉(zhuǎn)同步的方法

    Java異步調(diào)用轉(zhuǎn)同步的方法

    這篇文章主要介紹了Java異步調(diào)用轉(zhuǎn)同步的方法,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-12-12
  • Mybatis給數(shù)據(jù)庫敏感字段加解密詳解

    Mybatis給數(shù)據(jù)庫敏感字段加解密詳解

    這篇文章主要介紹了Mybatis給數(shù)據(jù)庫敏感字段加解密詳解,為了保護(hù)數(shù)據(jù)庫敏感字段數(shù)據(jù)安全,有時候我們需要將敏感數(shù)據(jù)加密入庫,查詢時再解密成明文,我們可以利用Mybatis自定義TypeHandler來處理,需要的朋友可以參考下
    2023-11-11
  • java如何在應(yīng)用代碼里捕獲線程堆棧

    java如何在應(yīng)用代碼里捕獲線程堆棧

    這篇文章主要為大家介紹了java如何在應(yīng)用代碼里捕獲線程堆棧實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • java線程封閉之棧封閉和ThreadLocal

    java線程封閉之棧封閉和ThreadLocal

    這篇文章主要介紹了java線程封閉之棧封閉和ThreadLocal,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • Guava事件總線應(yīng)用場景最佳實(shí)踐

    Guava事件總線應(yīng)用場景最佳實(shí)踐

    這篇文章主要為大家介紹了Guava事件總線應(yīng)用場景最佳實(shí)踐,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • 最新IntelliJ IDEA 2020版本的安裝教程詳解

    最新IntelliJ IDEA 2020版本的安裝教程詳解

    這篇文章主要介紹了最新IntelliJ IDEA 2020版本的安裝教程詳解,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • java實(shí)現(xiàn)二叉樹的創(chuàng)建及5種遍歷方法(總結(jié))

    java實(shí)現(xiàn)二叉樹的創(chuàng)建及5種遍歷方法(總結(jié))

    下面小編就為大家?guī)硪黄猨ava實(shí)現(xiàn)二叉樹的創(chuàng)建及5種遍歷方法(總結(jié))。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • Java 編程中十個處理異常的建議

    Java 編程中十個處理異常的建議

    這篇文章主要介紹了Java 編程中十個處理異常的建議,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • JVM中四種GC算法案例詳解

    JVM中四種GC算法案例詳解

    這篇文章主要介紹了JVM中四種GC算法案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09

最新評論