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

Mybatis-Plus更新時(shí)間字段不生效的解決

 更新時(shí)間:2024年09月22日 09:47:06   作者:Jerryean99  
在使用Mybatis-Plus時(shí),可能會(huì)遇到updateTime字段不自動(dòng)更新的問(wèn)題,通過(guò)分析,原因在于selectById獲取舊數(shù)據(jù)后,如果字段已有值,更新操作不會(huì)自動(dòng)填充更新時(shí)間,可以通過(guò)直接在實(shí)體中設(shè)置更新時(shí)間或在更新操作時(shí)指定時(shí)間來(lái)解決此問(wèn)題

背景

Mybatis-Plus是在Mybatis的基礎(chǔ)上只做增強(qiáng)不做改變,主要是為簡(jiǎn)化開(kāi)發(fā)。項(xiàng)目的背景是使用的就是Mybatis-Plus,但是在運(yùn)行項(xiàng)目過(guò)程中發(fā)現(xiàn)一個(gè)問(wèn)題,當(dāng)使用Mybatis-Plus進(jìn)行數(shù)據(jù)的更新的時(shí)候,更新字段沒(méi)有按照我們所預(yù)想的進(jìn)行對(duì)應(yīng)的時(shí)間的更新。

創(chuàng)建這個(gè)字段的語(yǔ)句如下所示:

 `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時(shí)間'

原因分析

使用Mybatis-Plus的更新方法,進(jìn)行對(duì)應(yīng)數(shù)據(jù)實(shí)體的更新,比如使用如下方法:

XXX.updateById()
// ....... 等等方法

這些方法使用之后,發(fā)現(xiàn)沒(méi)有對(duì)updateTime字段數(shù)據(jù)進(jìn)行更新。

原因分析:

當(dāng)selectByld從數(shù)據(jù)庫(kù)取出舊數(shù)據(jù),然后修改自己想修改的字段后調(diào)用updateById,會(huì)發(fā)現(xiàn)updateTime字段不會(huì)更新,這是因?yàn)閟electByld可以取出updateTime的舊值,更新時(shí)填充策路會(huì)判斷屬性已有值,不進(jìn)行自動(dòng)填充,因此updateTime不會(huì)自動(dòng)更新。而且官方目前沒(méi)有直接提供強(qiáng)制更新的方法。

查看fillStrategy方法源碼,我們也可以看到只有屬性沒(méi)有被填充值,才會(huì)執(zhí)行set方法。

解決辦法

解決方法一

更新時(shí)設(shè)置更新時(shí)間

	TDZopenOrder openOrder = openOrderService.getById(orderId);
	openOrder.setOrderId(washOrderId);
	openOrder.setUpdateTime(LocalDateTime.now());
	openOrder.updateById()

解決方法二

實(shí)體上設(shè)置更新時(shí)間

	public class TDZopenOrder {
	    @ApiModelProperty("更新時(shí)間")
	    @TableField(update = "now()")
	    private LocalDateTime updateTime;
	}

推薦使用方法二,這樣不用每次都取設(shè)置更新時(shí)間,簡(jiǎn)化代碼!??!

總結(jié)

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

相關(guān)文章

  • 如何解決IDEA.properties文件中文亂碼問(wèn)題

    如何解決IDEA.properties文件中文亂碼問(wèn)題

    這篇文章主要介紹了如何解決IDEA.properties文件中文亂碼問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Spring實(shí)現(xiàn)定時(shí)任務(wù)的兩種方法詳解

    Spring實(shí)現(xiàn)定時(shí)任務(wù)的兩種方法詳解

    Spring提供了兩種方式實(shí)現(xiàn)定時(shí)任務(wù),一種是注解,還有一種就是接口了,這篇文章主要為大家介紹了這兩種方法的具體實(shí)現(xiàn)方法,需要的可以參考下
    2024-12-12
  • Spring中@ExceptionHandler注解的工作原理詳解

    Spring中@ExceptionHandler注解的工作原理詳解

    這篇文章主要介紹了Spring中@ExceptionHandler注解的工作原理詳解,Spring Web注解@ExceptionHandler可以用來(lái)指定處理某類異常的控制器方法,從而在這些異常發(fā)生時(shí),會(huì)有相應(yīng)的控制器方法來(lái)處理此類異常,需要的朋友可以參考下
    2024-01-01
  • 聊聊Object類中的wait()和notify()方法

    聊聊Object類中的wait()和notify()方法

    這篇文章主要介紹了Object類中的wait()和notify()方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Spring Boot整合Thymeleaf詳解

    Spring Boot整合Thymeleaf詳解

    這篇文章主要介紹了Spring Boot整合Thymeleaf詳解,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • SpringBoot 項(xiàng)目使用hutool 工具進(jìn)行 http 接口調(diào)用的處理方法

    SpringBoot 項(xiàng)目使用hutool 工具進(jìn)行 http 接口調(diào)用的處理方

    在實(shí)際的開(kāi)發(fā)過(guò)程中一個(gè)互聯(lián)網(wǎng)的項(xiàng)目來(lái)說(shuō) ,有可能會(huì)涉及到調(diào)用外部接口的實(shí)際業(yè)務(wù)場(chǎng)景,下面通過(guò)本文給大家介紹SpringBoot 項(xiàng)目 使用hutool 工具進(jìn)行 http 接口調(diào)用的處理方法,需要的朋友可以參考下
    2022-06-06
  • SpringBoot分離打Jar包的兩種配置方式

    SpringBoot分離打Jar包的兩種配置方式

    這篇文章主要介紹了SpringBoot分離打Jar包的兩種配置方式,方式一是基于maven-jar-plugin,方式二是基于spring-boot-maven-plugin,文中結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • Mybatis?MappedStatement類核心原理詳解

    Mybatis?MappedStatement類核心原理詳解

    這篇文章主要介紹了Mybatis?MappedStatement類,mybatis的mapper文件最終會(huì)被解析器,解析成MappedStatement,其中insert|update|delete|select每一個(gè)標(biāo)簽分別對(duì)應(yīng)一個(gè)MappedStatement
    2022-11-11
  • Java  隊(duì)列實(shí)現(xiàn)原理及簡(jiǎn)單實(shí)現(xiàn)代碼

    Java 隊(duì)列實(shí)現(xiàn)原理及簡(jiǎn)單實(shí)現(xiàn)代碼

    這篇文章主要介紹了Java 隊(duì)列實(shí)現(xiàn)原理及簡(jiǎn)單實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • Spring Boot應(yīng)用配置常用相關(guān)視圖解析器詳解

    Spring Boot應(yīng)用配置常用相關(guān)視圖解析器詳解

    這篇文章主要給大家介紹了關(guān)于Spring Boot應(yīng)用配置常用相關(guān)視圖解析器的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12

最新評(píng)論