最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

背景

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

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

 `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)沒有對(duì)updateTime字段數(shù)據(jù)進(jìn)行更新。

原因分析:

當(dāng)selectByld從數(shù)據(jù)庫取出舊數(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)更新。而且官方目前沒有直接提供強(qiáng)制更新的方法。

查看fillStrategy方法源碼,我們也可以看到只有屬性沒有被填充值,才會(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)化代碼?。。?/p>

總結(jié)

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

相關(guān)文章

  • Spring @value和@PropertySource注解使用方法解析

    Spring @value和@PropertySource注解使用方法解析

    這篇文章主要介紹了Spring @value和@PropertySource注解使用方法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Spring整合Junit的使用詳解

    Spring整合Junit的使用詳解

    這篇文章主要介紹了Spring整合Junit的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Lombok中關(guān)于@Data的使用解析

    Lombok中關(guān)于@Data的使用解析

    這篇文章主要介紹了Lombok中關(guān)于@Data的使用解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • spring boot集成mongodb的增刪改查的示例代碼

    spring boot集成mongodb的增刪改查的示例代碼

    這篇文章主要介紹了spring boot集成mongodb的增刪改查的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • selenium操作隱藏的元素(python+Java)

    selenium操作隱藏的元素(python+Java)

    這篇文章主要介紹了selenium操作隱藏的元素(python+Java),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Spring boot 在idea中添加熱部署插件的圖文教程

    Spring boot 在idea中添加熱部署插件的圖文教程

    這篇文章主要介紹了Spring boot 在idea中添加熱部署插件的圖文教程,本文通過圖文并茂的形式給大家展示具體步驟,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • Mybatis返回值(resultType&resultMap)的具體使用

    Mybatis返回值(resultType&resultMap)的具體使用

    返回值屬性有兩種設(shè)置,一種是resultType,一種是resultMap,本文主要介紹了Mybatis返回值(resultType&resultMap)的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • springboot整合Quartz實(shí)現(xiàn)動(dòng)態(tài)配置定時(shí)任務(wù)的方法

    springboot整合Quartz實(shí)現(xiàn)動(dòng)態(tài)配置定時(shí)任務(wù)的方法

    本篇文章主要介紹了springboot整合Quartz實(shí)現(xiàn)動(dòng)態(tài)配置定時(shí)任務(wù)的方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-10-10
  • 一鍵打包壓縮,Java項(xiàng)目變身JAR

    一鍵打包壓縮,Java項(xiàng)目變身JAR

    想要一鍵打包Java項(xiàng)目生成JAR文件并進(jìn)行壓縮?本指南將帶你輕松駕馭這項(xiàng)看似復(fù)雜的任務(wù),讓我們一起揭開神秘的面紗,輕松打包,高效出發(fā)!
    2023-12-12
  • 使用Java實(shí)現(xiàn)三種等級(jí)的掃雷游戲(完整版)

    使用Java實(shí)現(xiàn)三種等級(jí)的掃雷游戲(完整版)

    掃雷是一款大眾類的益智小游戲,根據(jù)點(diǎn)擊格子出現(xiàn)的數(shù)字找出所有非雷格子,同時(shí)避免踩雷,踩到一個(gè)雷即全盤皆輸,下面這篇文章主要給大家介紹了關(guān)于使用Java實(shí)現(xiàn)三種等級(jí)的掃雷游戲的相關(guān)資料,需要的朋友可以參考下
    2023-01-01

最新評(píng)論

沁水县| 化州市| 洛浦县| 通河县| 亳州市| 赫章县| 化德县| 海淀区| 鹤峰县| 郎溪县| 永仁县| 甘南县| 新宾| 海伦市| 博客| 清苑县| 亚东县| 留坝县| 隆回县| 阳山县| 无极县| 盐城市| 丰镇市| 寿宁县| 云林县| 台江县| 新余市| 尚义县| 济宁市| 榆中县| 越西县| 铁力市| 松阳县| 体育| 安吉县| 临潭县| 桃江县| 抚州市| 纳雍县| 朝阳区| 乌兰浩特市|