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

mybatis-plus踩坑之下劃線駝峰轉(zhuǎn)換方式

 更新時(shí)間:2025年08月16日 09:56:26   作者:Echoo華地  
MyBatis-Plus默認(rèn)駝峰轉(zhuǎn)下劃線導(dǎo)致實(shí)體字段匹配失敗,關(guān)閉該功能后需手動(dòng)配置映射,建議避免字段使用下劃線,若必須則可通過注解、重寫toString或調(diào)整字段名解決

問題:對(duì)象中包含下劃線的字段兒查詢不出來

mybatis-plus中,默認(rèn)開啟了下滑線-駝峰轉(zhuǎn)換

會(huì)把數(shù)據(jù)庫字段中的下劃線自動(dòng)轉(zhuǎn)換成駝峰形式,然后去匹配實(shí)體類對(duì)象的字段

online_num -> onlineNum

如果在一個(gè)實(shí)體類中存在一個(gè)帶下劃線的字段,查詢出來為null

 private Integer online_num;

即使用了@TableField()注解去指定映射關(guān)系,查詢結(jié)果也為null

 @TableField("online_num")
 private Integer online_num;

問題就是出現(xiàn)在了駝峰轉(zhuǎn)換這里,因?yàn)橐呀?jīng)指明了映射關(guān)系,所以把駝峰轉(zhuǎn)換關(guān)掉就行:

  • yml:
mybatis-plus:
  configuration:
    map-underscore-to-camel-case: false
  • properties:
mybatis-plus.configuration.map-underscore-to-camel-case=false

但是這里有個(gè)問題,你關(guān)了自動(dòng)駝峰轉(zhuǎn)換,所有字段都要通過@TableField()注解去指定映射關(guān)系或者在mapper.xml中指定映射關(guān)系,這樣增加了很多工作量。

所以非必要情況下類字段還是不要用_去命名字段,省得麻煩。

實(shí)在不行,如果一定要用下劃線字段,

看看具體的原因是什么

  • ①如果是序列化或者反序列話需要的話,可以用@JsonProperty和@JsonAlias來解決
  • ②如果是toString需要,那就重寫一下Object的toString方法
  • ③其他情況的話,可以加一個(gè)字段比如a_b,就加一個(gè)aB字段,然后手寫一下a_b字段對(duì)應(yīng)的getter,setter,使它們指向aB字段,如果不想轉(zhuǎn)字段就轉(zhuǎn)對(duì)象,查詢用一個(gè)對(duì)象,然后對(duì)業(yè)務(wù)一個(gè)對(duì)象,查詢出來后就轉(zhuǎn)成業(yè)務(wù)對(duì)象,技巧還是很多滴~~

總結(jié)

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

相關(guān)文章

最新評(píng)論

锡林浩特市| 纳雍县| 灌南县| 迁安市| 沙田区| 安泽县| 美姑县| 胶州市| 宁明县| 巴彦县| 白玉县| 和林格尔县| 榆树市| 曲松县| 通渭县| 辉南县| 孟州市| 晋州市| 玉龙| 庐江县| 泸水县| 治县。| 克拉玛依市| 克拉玛依市| 金溪县| 德保县| 玉山县| 全椒县| 卫辉市| 循化| 禹城市| 灵宝市| 安溪县| 灌阳县| 濮阳县| 台州市| 都匀市| 河津市| 龙山县| 石河子市| 七台河市|