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

解決mybatis映射結(jié)果集失效的問題

 更新時(shí)間:2020年11月30日 15:50:00   作者:唯一昵稱真難  
這篇文章主要介紹了解決mybatis映射結(jié)果集失效的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

在開發(fā)中可能會(huì)遇到這樣的問題,使用mybatis進(jìn)行結(jié)果集與實(shí)體類之間的關(guān)系映射時(shí),可能會(huì)出現(xiàn)某些屬性映射不上去的情況.

為了方便排查問題我們需要查看mybatis訪問數(shù)據(jù)庫SQL信息。

可以在配置Log4J:

log4j.logger.com.xxx.dao=TRACE
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource = DEBUG
log4j.logger.com.ibatis.common.jdbc.ScriptRunner = DEBUG
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate = DEBUG
log4j.logger.java.sql=debug
log4j.logger.java.sql.Connection = DEBUG
log4j.logger.java.sql.ResultSet = DEBUG
log4j.logger.java.sql.Statement=debug
log4j.logger.java.sql.PreparedStatement=debug,stdout

注意:log4j.logger.com.xxx.dao=TRACE,一定要加上,加上這句話就可以打印出你訪問數(shù)據(jù)庫返回的結(jié)果集,可以更加方便的找到問題的所在。這句話的中的com.xxx.dao代表的是mapperw文件的namespace。

解決方案一:

查看映射結(jié)果集的配置文件:

如果像上述的配置文件會(huì)出現(xiàn)問題,因?yàn)樵趐roperty后面的字符串出現(xiàn)了空格,在這種情況下,mybatis是無法映射的,它會(huì)認(rèn)為id空格 != id。于是返回默認(rèn)的對(duì)應(yīng)的規(guī)則,當(dāng)實(shí)體類中的屬性與表中的字段完全相同則可以默認(rèn)對(duì)應(yīng),當(dāng)出現(xiàn)_時(shí)無法對(duì)應(yīng),這時(shí),就會(huì)產(chǎn)生有的字段可以映射有的字段不可以映射的情況。所以我們必須檢查是否出現(xiàn)空格。

修改配置文件如下:

解決方案二:

直接為結(jié)果集取別名,將返回的結(jié)果集全部取別名,跟實(shí)體類的屬性保持一致,這樣就能完整的映射。

補(bǔ)充知識(shí):關(guān)于mybatis mapper.xml中 sql使用 in 執(zhí)行失敗的原因

mapper.xml傳參如果下

user_obj_id in ( #{ids})

最終執(zhí)行的sql拼接如下

user_obj_id in ( ‘55,56,57' )

而不是期望的

user_obj_id in ( ‘55',‘56',‘58' )

以上這篇解決mybatis映射結(jié)果集失效的問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot項(xiàng)目集成Flyway詳細(xì)過程

    SpringBoot項(xiàng)目集成Flyway詳細(xì)過程

    今天帶大家學(xué)習(xí)SpringBoot項(xiàng)目集成Flyway詳細(xì)過程,文中有非常詳細(xì)的介紹及代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-05-05
  • IDEA編寫JavaWeb出現(xiàn)亂碼問題解決方案

    IDEA編寫JavaWeb出現(xiàn)亂碼問題解決方案

    這篇文章主要介紹了IDEA編寫JavaWeb出現(xiàn)亂碼問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 淺談java多態(tài)的實(shí)現(xiàn)主要體現(xiàn)在哪些方面

    淺談java多態(tài)的實(shí)現(xiàn)主要體現(xiàn)在哪些方面

    下面小編就為大家?guī)硪黄獪\談java多態(tài)的實(shí)現(xiàn)主要體現(xiàn)在哪些方面。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-09-09
  • SpringBoot將Bean放入容器的五種方式

    SpringBoot將Bean放入容器的五種方式

    這篇文章給大家介紹了SpringBoot將Bean放入容器的五種方式,文中通過代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-02-02
  • springboot 設(shè)置局域網(wǎng)訪問的實(shí)現(xiàn)步驟

    springboot 設(shè)置局域網(wǎng)訪問的實(shí)現(xiàn)步驟

    Spring Boot是一個(gè)開源Java-based框架,用于創(chuàng)建獨(dú)立的、生產(chǎn)級(jí)別的Spring應(yīng)用,它旨在簡(jiǎn)化Spring應(yīng)用的初始搭建及開發(fā)過程,通過提供各種自動(dòng)配置的starter包,Spring Boot使得項(xiàng)目配置變得簡(jiǎn)單快速,感興趣的朋友一起看看吧
    2024-02-02
  • Springboot中的三個(gè)基本架構(gòu)

    Springboot中的三個(gè)基本架構(gòu)

    這篇文章主要介紹了Springboot中的三個(gè)基本架構(gòu),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Java如何根據(jù)前端返回的字段名進(jìn)行查詢數(shù)據(jù)

    Java如何根據(jù)前端返回的字段名進(jìn)行查詢數(shù)據(jù)

    這篇文章主要為大家詳細(xì)介紹了Java如何根據(jù)前端返回的字段名進(jìn)行查詢數(shù)據(jù),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-11-11
  • Java利用HttpClient模擬POST表單操作應(yīng)用及注意事項(xiàng)

    Java利用HttpClient模擬POST表單操作應(yīng)用及注意事項(xiàng)

    本文主要介紹JAVA中利用HttpClient模擬POST表單操作,希望對(duì)大家有所幫助。
    2016-04-04
  • Java對(duì)稱加密算法DES實(shí)例詳解

    Java對(duì)稱加密算法DES實(shí)例詳解

    這篇文章主要介紹了Java對(duì)稱加密算法DES,結(jié)合實(shí)例形式詳細(xì)分析了java DES算法的概念、原理、實(shí)現(xiàn)方法與應(yīng)用場(chǎng)景,需要的朋友可以參考下
    2019-09-09
  • Java成員變量默認(rèn)值原理詳解

    Java成員變量默認(rèn)值原理詳解

    這篇文章主要介紹了Java成員變量默認(rèn)值原理詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03

最新評(píng)論

固镇县| 兴海县| 怀安县| 会同县| 达州市| 万州区| 乌苏市| 巴林左旗| 调兵山市| 房山区| 湘乡市| 连云港市| 龙江县| 桂阳县| 海淀区| 乐清市| 福泉市| 宝鸡市| 甘南县| 兴国县| 漳平市| 烟台市| 绥江县| 澄江县| 沙坪坝区| 昌邑市| 同江市| 洛阳市| 龙口市| 房山区| 宜宾市| 将乐县| 青田县| 双流县| 霍林郭勒市| 义乌市| 遵义县| 广宗县| 青岛市| 海晏县| 安乡县|