亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

mybatis參數(shù)類型不匹配錯誤argument type mismatch的處理方案

 更新時間:2022年01月12日 11:39:37   作者:湯圓一號  
這篇文章主要介紹了mybatis參數(shù)類型不匹配錯誤argument type mismatch的處理方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

參數(shù)類型不匹配錯誤argument type mismatch

 

錯誤日志

java.lang.RuntimeException: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: Error selecting key or setting result to parameter object. Cause: org.apache.ibatis.reflection.ReflectionException: Could not set property ‘id’ of ‘class xxxxxxxx’ with value ‘37997’ Cause: java.lang.IllegalArgumentException: argument type mismatch
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: Error selecting key or setting result to parameter object. Cause: org.apache.ibatis.reflection.ReflectionException: Could not set property ‘id’ of ‘class com.fshows.lifecircle.marketcore.service.dal.lifecircle.dataobject.TpLifecircleQuotaDO’ with value ‘37997’ Cause: java.lang.IllegalArgumentException: argument type mismatch

錯誤描述

根據(jù)字面意思就是:參數(shù)類型不匹配

實(shí)際就是某個參數(shù)存儲的,與傳入的參數(shù)類型不一致

錯誤代碼

在這里插入圖片描述

錯誤原因

在mybatis:gen生成代碼的時候,這個id參數(shù)生成類型resultType=“java.lang.Long”,但實(shí)際數(shù)據(jù)庫類型是int,應(yīng)該對應(yīng)resultType=“java.lang.Integer”

只要將Long改為Integer,與數(shù)據(jù)庫對應(yīng)即可。

mybatis時argument type mismatch的坑

錯誤描述:參數(shù)類型不匹配

常見錯誤中 mybatis映射出現(xiàn)問題無非就

column名字錯誤、property字段名錯誤、resultMap id寫錯了 沒對上、映射實(shí)體類屬性類型和數(shù)據(jù)庫字段類型對不上,

這個一般都是比較容易想到和發(fā)現(xiàn)的。

但是某一天 映射實(shí)體類 因為某些地方要數(shù)據(jù)處理,你寫了一個有參構(gòu)造,而沒把無參構(gòu)造補(bǔ)上,這時mybatis在映射的時候 (映射首先要創(chuàng)建對象) 就會出現(xiàn)異常,而此時的參數(shù)類型不匹配 正是指的構(gòu)造參數(shù)類型不匹配 而非數(shù)據(jù)字段和屬性不匹配!

例如

new PeopleVO(People p) 和 new People() debug下可以看到會報錯參數(shù)People類型錯誤

所以在開發(fā)中 該遵循的規(guī)則 還是要遵循,相信不少人在初學(xué)java的時候 一定聽過 寫了有參構(gòu)造一定要手動把無參構(gòu)造寫上,當(dāng)時我想的是 要是用上無參構(gòu)造new對象 編譯器也會提示,用的時候在new也不遲 況且還不一定用得上,

可是在mybatis映射的時候 想不到吧 人家反射創(chuàng)建對象了… 不由感慨 前人的總結(jié)都是踩了無數(shù)坑的基礎(chǔ)上建立起來的,那些表面看起來不會有問題的代碼 可能會以某種意想不到的形式出現(xiàn)bug

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

相關(guān)文章

  • idea如何修改文件的file is read-only問題

    idea如何修改文件的file is read-only問題

    這篇文章主要介紹了idea如何修改文件的file is read-only問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • SpringBoot從配置文件中獲取屬性的四種方法總結(jié)

    SpringBoot從配置文件中獲取屬性的四種方法總結(jié)

    這篇文章主要介紹了SpringBoot從配置文件中獲取屬性的四種方法總結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Spring中利用配置文件和@value注入屬性值代碼詳解

    Spring中利用配置文件和@value注入屬性值代碼詳解

    這篇文章主要介紹了Spring中利用配置文件和@value注入屬性值代碼詳解,代碼中注釋比較詳細(xì),具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • SpringBoot自動裝配原理詳細(xì)解析

    SpringBoot自動裝配原理詳細(xì)解析

    這篇文章主要介紹了SpringBoot自動裝配原理詳細(xì)解析,一個對象交給Spring來管理的三種方式 @Bean @Compoment @Import,
    @Bean主要在@Configuration中,通過方法進(jìn)行注入相關(guān)的Bean,@Compoent與@Service歸為一類,在類上加注入對應(yīng)的類,需要的朋友可以參考下
    2024-01-01
  • 解決SpringCloud?Feign異步調(diào)用傳參問題

    解決SpringCloud?Feign異步調(diào)用傳參問題

    這篇文章主要介紹了SpringCloud?Feign異步調(diào)用傳參問題,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Java橋梁設(shè)計模式優(yōu)雅地將抽象與實(shí)現(xiàn)分離

    Java橋梁設(shè)計模式優(yōu)雅地將抽象與實(shí)現(xiàn)分離

    Java橋接設(shè)計模式通過將抽象和實(shí)現(xiàn)分離,使得它們可以獨(dú)立地變化,從而實(shí)現(xiàn)更靈活的代碼結(jié)構(gòu)。它是一種優(yōu)雅的設(shè)計模式,適用于需要處理多個變化因素的復(fù)雜應(yīng)用程序
    2023-04-04
  • Spring boot實(shí)現(xiàn)文件上傳功能

    Spring boot實(shí)現(xiàn)文件上傳功能

    這篇文章主要為大家詳細(xì)介紹了Spring boot實(shí)現(xiàn)文件上傳功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • MyBatis如何使用PageHelper實(shí)現(xiàn)分頁查詢

    MyBatis如何使用PageHelper實(shí)現(xiàn)分頁查詢

    這篇文章主要介紹了MyBatis如何使用PageHelper實(shí)現(xiàn)分頁查詢,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java ArrayList的基本概念和作用及動態(tài)數(shù)組的機(jī)制與性能

    Java ArrayList的基本概念和作用及動態(tài)數(shù)組的機(jī)制與性能

    在Java中,ArrayList是一個實(shí)現(xiàn)了List接口的動態(tài)數(shù)組,它可以根據(jù)需要自動增加大小,因此可以存儲任意數(shù)量的元素,這篇文章主要介紹了探秘Java ArrayList的基本概念和作用及動態(tài)數(shù)組的機(jī)制與性能,需要的朋友可以參考下
    2023-12-12
  • SpringMVC @RequestBody屬性名大寫字母注入失敗的解決

    SpringMVC @RequestBody屬性名大寫字母注入失敗的解決

    這篇文章主要介紹了SpringMVC @RequestBody屬性名大寫字母注入失敗的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04

最新評論