日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

mybatis支持驼峰自动转换sql吗_mybatis-plus返回map自动转驼峰配置操作

發布時間:2025/3/21 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mybatis支持驼峰自动转换sql吗_mybatis-plus返回map自动转驼峰配置操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

mybatis-plus返回map自動轉駝峰配置object-wrapper-factory不生效問題解決;配置map-underscore-to-camel-case: true不生效問題解決

很多時候我們工作中查詢很多字段的時候一般是返回一個VO來接收,這個時候我們只要在yml中配置了

map-underscore-to-camel-case: true

就會自動將查詢數據庫的字段帶下劃線的屬性轉成對應實體類VO中駝峰命名的屬性。

但是會經常有這種場景:例如我們只查詢2個字段要返回給前端,這時候我們還需要新建一個VO,很是麻煩,我們只需要查詢返回一個Map來接收就可以了 ,但是返回到控制臺的屬性結果卻不是駝峰命名。

如下圖 ,這就是為何你yml中配置了map-underscore-to-camel-case: true也不生效的原因。(對返回map不生效

怎么解決這個問題呢?解決方案:

mybatis-plus其實已經幫我們寫好了MybatisMapWrapperFactory類(開啟返回map結果集的下劃線轉駝峰)

在mybatis-plus-extension.jar下有一個類

com.baomidou.mybatisplus.extension.MybatisMapWrapperFactory

com.baomidou.mybatisplus.extension.handlers.MybatisMapWrapper

mybatis-plus自帶map下劃線轉駝峰配置類

重點:

我們只需要在yml中配置一下object-wrapper-factory指定MybatisMapWrapperFactory就可以了

mybatis-plus: mapper-locations: classpath:mapper/*Mapper.xml

configuration: call-setters-on-nulls: true

map-underscore-to-camel-case: true

object-wrapper-factory: com.baomidou.mybatisplus.extension.MybatisMapWrapperFactory

然后啟動項目,我去竟然報錯了:

***************************

APPLICATION FAILED TO START

***************************

Description:

Failed to bind properties under 'mybatis-plus.configuration.object-wrapper-factory' to org.apache.ibatis.reflection.wrapper.ObjectWrapperFactory:

Property: mybatis-plus.configuration.object-wrapper-factory

Value: com.baomidou.mybatisplus.extension.MybatisMapWrapperFactory

Origin: class path resource [application.yml]:99:29

Reason: No converter found capable of converting from type [java.lang.String] to type [org.apache.ibatis.reflection.wrapper.ObjectWrapperFactory]

Action:

Update your application's configuration

啟動報錯詳情

提示找不到合適的converter將string轉化為ObjectWrapperFactory對象。這又是什么鬼呢?

看字面意思,應該是缺少對應的converter,難道mybatis沒有提供這個converter嗎?

簡直有點坑。而且springboot也不提供用反射機制來構件對象的converter?

是的,springboot沒有這樣做。通過查資料得知springboot提供了一種擴展機制,允許你來寫一個converter來完成你想要的轉換工作。于是,我又寫了一個converter:

package com.bytedance.douyin.config;

import org.apache.ibatis.reflection.wrapper.ObjectWrapperFactory;

import org.springframework.boot.context.properties.ConfigurationPropertiesBinding;

import org.springframework.core.convert.converter.Converter;

import org.springframework.stereotype.Component;

@Component

@ConfigurationPropertiesBinding

public class ObjectWrapperFactoryConverter implements Converter {

@Override

public ObjectWrapperFactory convert(String source) {

try {

return (ObjectWrapperFactory) Class.forName(source).newInstance();

} catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {

throw new RuntimeException(e);

}

}

}

再次啟動 ok不報錯了,這時候來看看結果是不是返回map自動轉成駝峰命名。果然自動轉了

返回map自動轉駝峰命名

第二種方式:如果嫌配置Converter麻煩,不自定義Converter,那就不能在yml中配置

object-wrapper-factory: com.baomidou.mybatisplus.extension.MybatisMapWrapperFactory

教你第二種方式:直接這樣配置就搞定了

@Bean

public ConfigurationCustomizer mybatisConfigurationCustomizer(){

return new ConfigurationCustomizer() {

@Override

public void customize(org.apache.ibatis.session.Configuration configuration) {

configuration.setObjectWrapperFactory(new MybatisMapWrapperFactory());

}

};

}

補充知識:解決spring boot整合mybatis時 返回map value為空字段不顯示

這兩天公司從YMP框架換到了spring boot 在整合mybatis時多表聯查,返回map的時候,發現map里面的value是空的情況下

字段也不顯示了 導致頁面取值報錯,如下圖

上網查了一下,在yml文件中加入一個配置就可以了

mybatis:

configuration:

call-setters-on-nulls: true

以上這篇mybatis-plus返回map自動轉駝峰配置操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持我們。

時間: 2020-11-25

總結

以上是生活随笔為你收集整理的mybatis支持驼峰自动转换sql吗_mybatis-plus返回map自动转驼峰配置操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 男女裸体影院高潮 | 精品xxxx| 精品一区二区在线免费观看 | 人人看人人艹 | 婷婷激情五月网 | 女人天堂网| 东京热一区二区三区四区 | 欧美阿v | 国产一区二区黄色 | 亚洲剧情av| 一本之道高清无码视频 | 国产精品国产三级国产aⅴ下载 | 欧美人与物videos另类 | 男女污污软件 | 国产视频在线观看网站 | 中文字幕天堂在线 | 国产精品久久久999 www日本高清视频 | 亚洲黄页| 亚洲成a人片77777精品 | 亚洲三级久久 | 免费在线播放av | 鬼灭之刃柱训练篇在线观看 | 99精品视频在线播放免费 | 激情中文网 | 丰满多毛的大隂户视频 | 国产精品性色 | 国产女人18毛片水真多18精品 | 在线观看天堂av | 国产中文网 | 免费萌白酱国产一区二区三区 | 午夜小视频在线观看 | 免费在线看黄色片 | 欧美日韩中 | 黄色高清在线观看 | 欧美在线aa| 欧美a一级片 | 成人在线不卡 | 欧美日韩一区二区视频在线观看 | 欧美亚洲专区 | 姐姐你真棒插曲快来救救我电影 | 日本一级三级三级三级 | 深夜福利网 | 69av在线播放 | 精品国产伦一区二区三区免费 | 国产成人自拍视频在线 | 国产精品视频一区二区三区在3 | 久久精品三级视频 | 99热18| 五月激情五月婷婷 | 女生隐私免费看 | 国产成人aⅴ | 欧美一二 | 女主播在线观看 | 性视频在线播放 | 青娱乐在线免费视频 | 性一交一乱一精一晶 | 国产视频一区二区不卡 | 不卡的一区二区 | 成人在线网址 | 亚洲最大在线视频 | 青青草免费在线观看视频 | 免费无遮挡在线观看视频网站 | 青青草视频成人 | 国产又粗又猛又爽又黄的网站 | 免费国偷自产拍精品视频 | 超91在线| 依依成人在线 | 欧美精品一区二区免费看 | 在线成人一区二区 | 国产交换配乱淫视频免费 | 久久精工是国产品牌吗 | 国产一区二区三区精品在线 | 亚洲v国产| 中午字幕在线观看 | 风流少妇一区二区三区91 | 欧美一级性生活 | 久热综合 | 久久无码专区国产精品s | 波多野结衣中文在线 | 黄色av网页 | 欧美xxxbbb | 色噜噜狠狠一区二区三区果冻 | 福利一区二区视频 | 9.1在线观看免费 | 精品久久久久成人码免费动漫 | 在线观看亚洲精品 | 91插插插视频 | 成人性生交生交视频 | 手机看片日韩久久 | 丝袜美腿av| 荔枝视频污 | av网址在线播放 | 性色av浪潮av| 国产精品无码一区二区三区免费 | 麻豆成人在线 | 性色av免费| 天天干天天拍 | 国产香蕉视频在线播放 | 黄色视屏免费 |