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

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

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

一、前言

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

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

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

三、創(chuàng)建實(shí)體類(lèi)

@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;

}

四、自定義實(shí)現(xiàn)類(lèi) 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測(cè)試

@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("插入成功");
    }
}

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

六、測(cè)試添加

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

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

在這里插入圖片描述

在這里插入圖片描述

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

七、測(cè)試更新

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

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

在這里插入圖片描述

在這里插入圖片描述

此時(shí)我們看到更新也是可以自動(dòng)填充的!!

八、總結(jié)

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

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

相關(guān)文章

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

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

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

    Spring Boot Starters簡(jiǎn)介及其優(yōu)劣勢(shì)

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

    java中單例模式講解

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

    Java Scanner類(lèi)的使用示例

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

    java實(shí)現(xiàn)簡(jiǎn)單控制臺(tái)五子棋游戲

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

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

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

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

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

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

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

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

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

    Java ArrayList擴(kuò)容問(wèn)題實(shí)例詳解

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

最新評(píng)論