亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Mybatis-Plus使用@TableField實現(xiàn)自動填充日期的代碼示例

 更新時間:2022年04月26日 15:04:00   作者:偶爾善良  
數(shù)據(jù)庫中經(jīng)常有create_time,update_time兩個字段,在代碼中設(shè)置時間有點太麻煩了?mybatis-plus可以幫我們自動填充,本文主要介紹了Mybatis-Plus使用@TableField實現(xiàn)自動填充日期的代碼示例,感興趣的可以了解一下

一、前言

我們在日常開發(fā)中經(jīng)常使用ORM框架,比如Mybatis、tk.Mybatis、Mybatis-Plus。不過最廣泛的還是Mybatis-Plus,我們的一些表,都會有創(chuàng)建時間、更新時間、創(chuàng)建人、更新人。這些我們每次都要自己手動set吃力不討好,所以Mybatis-Plus帶來了自動填充,今天小編帶大家一起學(xué)習(xí)一下,本次以填充日期為例哈??!學(xué)到的小伙伴記得一鍵三連哦~~

二、導(dǎo)入maven依賴

<dependency>
     <groupId>com.baomidou</groupId>
     <artifactId>mybatis-plus-boot-starter</artifactId>
     <version>3.5.1</version>
 </dependency>

三、創(chuàng)建實體類

@Data
public class Test implements Serializable {
    private static final long serialVersionUID = 337361630075002456L;

    @TableId(type= IdType.ASSIGN_ID)
    private long id;

    private String name;

    private String gender;
    
    private String phone;
	
    @TableField(value = "create_date",fill = FieldFill.INSERT)
    private LocalDateTime createDate;

    @TableField(value = "update_date",fill = FieldFill.UPDATE)
    private LocalDateTime updateDate;

}

四、自定義實現(xiàn)類 MyMetaObjectHandler

@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {

    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("start insert fill ....");
        this.strictInsertFill(metaObject, "createDate", LocalDateTime.class, LocalDateTime.now());
    }

    @Override
    public void updateFill(MetaObject metaObject) {
        log.info("start update fill ....");
        this.strictUpdateFill(metaObject, "updateDate", LocalDateTime.class, LocalDateTime.now());
    }
}

五、Controller測試

@RestController
@RequestMapping("/test")
@Slf4j
@RequiredArgsConstructor
public class TestController {

    @NonNull
    private TestMapper testMapper;

    @GetMapping("/insert")
    public Result insert(@RequestBody Test test){
        testMapper.insert(test);
        return Result.success("插入成功");
    }

    @PutMapping("/update")
    public Result update(@RequestBody Test test){
        testMapper.updateById(test);
        return Result.success("插入成功");
    }
}

友情提示: 這個@RequiredArgsConstructor注解不明白的看我這篇文章哦!---> @RequiredArgsConstructor注解

六、測試添加

請求地址:localhost:8089/test/insert 請求內(nèi)容:

{ 
    "name":"王",
    "gender":"男",
    "phone":"123"
}

在這里插入圖片描述

在這里插入圖片描述

我們可以看到?jīng)]有輸入日期,自動創(chuàng)建了哈??!

七、測試更新

請求地址:localhost:8089/test/update 請求內(nèi)容:

{ 
	"id":14,
    "name":"王",
    "gender":"男",
    "phone":"123"
}
復(fù)制代碼

在這里插入圖片描述

在這里插入圖片描述

此時我們看到更新也是可以自動填充的??!

八、總結(jié)

總的來說還是比較方便的,減輕開發(fā)的工作量,代碼更加優(yōu)雅哈! ==特別提醒==:自動填充的類型要和實體類的類型一致,不然不會填充哈

到此這篇關(guān)于Mybatis-Plus使用@TableField實現(xiàn)自動填充日期的代碼示例的文章就介紹到這了,更多相關(guān)Mybatis-Plus @TableField自動填充日期內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java設(shè)計模式之裝飾模式詳解

    Java設(shè)計模式之裝飾模式詳解

    這篇文章主要介紹了Java設(shè)計模式中的裝飾者模式,裝飾者模式即Decorator Pattern,裝飾模式是在不必改變原類文件和使用繼承的情況下,動態(tài)地擴展一個對象的功能,裝飾模式又名包裝模式。裝飾器模式以對客戶端透明的方式拓展對象的功能,是繼承關(guān)系的一種替代方案
    2022-08-08
  • Spring Boot Starters簡介及其優(yōu)劣勢

    Spring Boot Starters簡介及其優(yōu)劣勢

    在這篇文章中,我們將向你介紹Spring Boot Starters,并將討論Spring Boot Starters的優(yōu)點和優(yōu)勢,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • java中單例模式講解

    java中單例模式講解

    這篇文章主要介紹了java中單例模式,本文通過簡單的案例,講解了該模式在java中的使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Java Scanner類的使用示例

    Java Scanner類的使用示例

    這篇文章主要介紹了Java Scanner類的使用示例,幫助大家更好的理解和學(xué)習(xí)java,感興趣的朋友可以了解下
    2020-08-08
  • java實現(xiàn)簡單控制臺五子棋游戲

    java實現(xiàn)簡單控制臺五子棋游戲

    這篇文章主要為大家詳細(xì)介紹了java實現(xiàn)簡單控制臺五子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • Springboot熱部署實現(xiàn)原理及實例詳解

    Springboot熱部署實現(xiàn)原理及實例詳解

    這篇文章主要介紹了Springboot熱部署實現(xiàn)原理及實例詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • Java Websocket Canvas實現(xiàn)井字棋網(wǎng)絡(luò)游戲

    Java Websocket Canvas實現(xiàn)井字棋網(wǎng)絡(luò)游戲

    這篇文章主要介紹了Java Websocket Canvas實現(xiàn)井字棋網(wǎng)絡(luò)游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Java畢業(yè)設(shè)計實戰(zhàn)之食品溯源系統(tǒng)的實現(xiàn)

    Java畢業(yè)設(shè)計實戰(zhàn)之食品溯源系統(tǒng)的實現(xiàn)

    這是一個使用了java+Springboot+Maven+mybatis+Vue+mysql+wd開發(fā)的食品溯源系統(tǒng),是一個畢業(yè)設(shè)計的實戰(zhàn)練習(xí),具有食品溯源該有的所有功能,感興趣的朋友快來看看吧
    2022-01-01
  • springboot為異步任務(wù)規(guī)劃自定義線程池的實現(xiàn)

    springboot為異步任務(wù)規(guī)劃自定義線程池的實現(xiàn)

    本文主要介紹了springboot為異步任務(wù)規(guī)劃自定義線程池,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • Java ArrayList擴容問題實例詳解

    Java ArrayList擴容問題實例詳解

    這篇文章主要介紹了Java ArrayList擴容問題實例詳解,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02

最新評論