mybatisplus自動(dòng)填充屬性值的實(shí)現(xiàn)步驟
MetaObjectHandler: 是mybatisplus提供的一個(gè)接口,這個(gè)接口定義了在執(zhí)行插入和更新操作的時(shí)候的回調(diào)方法,允許你自定義實(shí)體對(duì)象的一些屬性值,比如: createTime,createBy,updateTime,updateBy 等
他有兩個(gè)核心方法:
insertFill: 在執(zhí)行插入操作時(shí),,用于填充實(shí)體對(duì)象的默認(rèn)值,,標(biāo)記了@TableField(fill=FieldFill.INSERT)的字段就會(huì)被填充updateFill:在執(zhí)行更新操作時(shí)調(diào)用,用于填充實(shí)體對(duì)象的默認(rèn)值
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "cc_user")
public class User {
private Integer id;
private String username;
@TableField(fill = FieldFill.INSERT)
private String createBy;
private String updateBy;
private Date createTime;
private Date updateTime;
}
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
System.out.println("插入填充方法被調(diào)用");
this.setFieldValByName("createBy","waterkid",metaObject);
this.setFieldValByName("updateBy","cc",metaObject);
}
@Override
public void updateFill(MetaObject metaObject) {
System.out.println("插入填充方法被調(diào)用");
this.setFieldValByName("createBy","waterkid",metaObject);
this.setFieldValByName("updateBy","cc",metaObject);
}
}
測(cè)試:
@Test
void contextLoads() {
int hehe = userMapper.insert(User.builder().username("hehe").build());
}到此這篇關(guān)于mybatisplus自動(dòng)填充屬性值的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)mybatisplus自動(dòng)填充屬性值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- MybatisPlus自動(dòng)填充時(shí)間的配置類實(shí)現(xiàn)
- MyBatisPlus實(shí)現(xiàn)自動(dòng)填充字段的實(shí)踐
- mybatisplus實(shí)現(xiàn)自動(dòng)填充時(shí)間的項(xiàng)目實(shí)踐
- MybatisPlus自動(dòng)填充創(chuàng)建(更新)時(shí)間問(wèn)題
- mybatisPlus自動(dòng)填充更新時(shí)間的示例代碼
- Mybatisplus自動(dòng)填充實(shí)現(xiàn)方式及代碼示例
- MybatisPlus 自動(dòng)填充的實(shí)現(xiàn)
- MybatisPlus字段自動(dòng)填充&樂(lè)觀鎖的方法實(shí)現(xiàn)
相關(guān)文章
spring cglib 與 jdk 動(dòng)態(tài)代理
本篇文章主要介紹了spring cglib與jdk動(dòng)態(tài)代理的相關(guān)知識(shí),具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-05-05
Java程序開發(fā)中abstract 和 interface的區(qū)別詳解
abstract class和interface在Java語(yǔ)言中都是用來(lái)進(jìn)行抽象類。但是兩者有什么區(qū)別呢,接下來(lái)小編給大家?guī)?lái)了abstract 和 interface的區(qū)別詳解,感興趣的朋友一起學(xué)習(xí)吧2016-06-06
java中synchronized Lock(本地同步)鎖的8種情況
本文主要介紹了java中synchronized Lock(本地同步)鎖的8種情況,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
maven將項(xiàng)目打包上傳到nexus私服的詳細(xì)教程
這篇文章主要介紹了maven將項(xiàng)目打包上傳到nexus私服,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-07-07
Spring Boot ActiveMQ如何設(shè)置訪問(wèn)密碼
這篇文章主要介紹了Spring Boot ActiveMQ如何設(shè)置訪問(wèn)密碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
SpringSecurity oAuth2.0的四種模式(小結(jié))
本文主要介紹了SpringSecurity oAuth2.0的四種模式,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
詳解Java Callable接口實(shí)現(xiàn)多線程的方式
這篇文章主要介紹了詳解Java Callable接口實(shí)現(xiàn)多線程的方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
List集合中對(duì)數(shù)據(jù)實(shí)現(xiàn)多重規(guī)則進(jìn)行排序的案例
今天小編就為大家分享一篇關(guān)于List集合中對(duì)數(shù)據(jù)實(shí)現(xiàn)多重規(guī)則進(jìn)行排序的案例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12

