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

Mybatis-Plus3.2.0 MetaObjectHandler 無法進(jìn)行公共字段全局填充

 更新時(shí)間:2019年11月25日 14:23:41   作者:馬馬馬馬馬百萬  
這篇文章主要介紹了Mybatis-Plus3.2.0 MetaObjectHandler 無法進(jìn)行公共字段全局填充,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

問題描述

最近在做的這個(gè)項(xiàng)目架構(gòu)組對(duì)于配置文件決定,采取的是 .xml 配置文件

一個(gè)數(shù)據(jù)中臺(tái)項(xiàng)目,因?yàn)椴渴瓠h(huán)境比較復(fù)雜,可能需要適配阿里、騰訊、開源等環(huán)境和機(jī)房,所以配置文件和啟動(dòng)類為三類

之前寫的 MetaObjectHandler 都是采用的 SpringBoot 配置方式開發(fā),突然換成 .xml 配置文件,還是有不少坑的,其中就有配置的 MetaObjectHandler 死活不起作用 ⬆️🔥(上火)

問題代碼

這種方式放在 平常 SpringBoot 項(xiàng)目中,一點(diǎn)毛病沒有…

@Component
public class MybatisPlusObjectHandler implements MetaObjectHandler {

  @Override
  public void insertFill(MetaObject metaObject) {
    Date now = new Date();

    Object crteTime = getFieldValByName("crteTime", metaObject);
    if (Objects.isNull(crteTime)) {
      setFieldValByName("crteTime", now, metaObject);
    }

    Object optTime = getFieldValByName("optTime", metaObject);
    if (Objects.isNull(optTime)) {
      setFieldValByName("optTime", now, metaObject);
    }

    setFieldValByName("invdFlag", TpcConstant.INVD, metaObject);
  }

  @Override
  public void updateFill(MetaObject metaObject) {
    Object optTime = getFieldValByName("optTime", metaObject);
    if (Objects.isNull(optTime)) {
      setFieldValByName("optTime", new Date(), metaObject);
    }
  }
}

解決方式

將 MybatisPlusObjectHandler 類上的 @Component 去掉,換成在 .xml 中注冊(cè)

<bean class="xxx.xxx.xxx.MybatisPlusObjectHandler" id="myMetaObjectHandler"/>

  <bean id="globalConfiguration" class="com.baomidou.mybatisplus.core.config.GlobalConfig">
    <property name="metaObjectHandler" ref="myMetaObjectHandler"/>
  </bean>

  <bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
    <!-- 注入公共字段填充處理器 -->
    <property name="globalConfig" ref="globalConfiguration" />
  </bean>

問題解決 還是比較疑問 既然采用了 SpringBoot 開發(fā)框架,為什么還是要使用 .xml 配置文件的這種方式,如果有大佬知道,歡迎評(píng)論區(qū)留言或私信 👏

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解java線程的開始、暫停、繼續(xù)

    詳解java線程的開始、暫停、繼續(xù)

    本文將介紹通過線程讀取文件內(nèi)容,并且可以控制線程的開始、暫停、繼續(xù),來控制讀文件。具有一定的參考作用,下面跟著小編一起來看下吧
    2017-01-01
  • @Validated和@Valid三種異常捕獲處理方式

    @Validated和@Valid三種異常捕獲處理方式

    這篇文章主要介紹了@Validated和@Valid三種異常捕獲處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • Mybatis配置之<properties>屬性配置元素解析

    Mybatis配置之<properties>屬性配置元素解析

    這篇文章主要介紹了Mybatis配置之<properties>屬性配置元素解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • MyBatis Plus 實(shí)現(xiàn)多表分頁查詢功能的示例代碼

    MyBatis Plus 實(shí)現(xiàn)多表分頁查詢功能的示例代碼

    這篇文章主要介紹了MyBatis Plus 實(shí)現(xiàn)多表分頁查詢功能,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • 詳談異步log4j2中的location信息打印問題

    詳談異步log4j2中的location信息打印問題

    這篇文章主要介紹了詳談異步log4j2中的location信息打印問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java讀寫Windows共享文件夾的方法實(shí)例

    Java讀寫Windows共享文件夾的方法實(shí)例

    本篇文章主要介紹了Java讀寫Windows共享文件夾的方法實(shí)例,具有一定的參考價(jià)值,有興趣的同學(xué)可以了解一下。
    2016-11-11
  • 初識(shí)MyBatis及基本配置和執(zhí)行

    初識(shí)MyBatis及基本配置和執(zhí)行

    這篇文章主要介紹了初識(shí)MyBatis的基本知識(shí),文中給大家提到了mybatis基本配置和執(zhí)行過程,需要的朋友可以參考下
    2017-11-11
  • Java并行執(zhí)行任務(wù)的幾種方案小結(jié)

    Java并行執(zhí)行任務(wù)的幾種方案小結(jié)

    這篇文章主要介紹了Java并行執(zhí)行任務(wù)的幾種方案小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java使用BigDecimal進(jìn)行高精度計(jì)算的示例代碼

    Java使用BigDecimal進(jìn)行高精度計(jì)算的示例代碼

    本篇文章主要介紹了Java使用BigDecimal進(jìn)行高精度計(jì)算的示例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下
    2017-09-09
  • java通過證書訪問etcd的實(shí)現(xiàn)步驟

    java通過證書訪問etcd的實(shí)現(xiàn)步驟

    Etcd提供了多種語言的客戶端庫,本文主要介紹了java通過證書訪問etcd的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05

最新評(píng)論