MyBatis报错:TypeException Could not set parameters for mapping问题解决

MyBatis报错:TypeException: Could not set parameters for mapping问题解决

问题收录

js 复制代码
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='roleId', mode=IN, javaType=class java.lang.Integer, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.

翻译人话:Mybatis映射赋值失败

分析问题

该报错直译为"无法为name这个字段设置映射参数",根据日志定位到报错的XML,对.xml中代码逐行分析后,发现定位到的SQL确实有这个字段,而且被"-- "进行注释了,但是数据库和代码的实体类均无该字段,得出造成错误的原因是mybatis中SQL添加了注释引起的。

在XML中,用"--"注释的代码仍会被执行,数据库和实体类均无,但SQL凭空多出来一个字段,所以报错该字段无法映射。

问题解决

删除注释行sql代码,再次测试,问题解决

总结:XML中的SQL的注释要用"<!---->",不可以用"-- "

了解更多知识请戳下:

@Author:懒羊羊

相关推荐
程序员小郭83几秒前
Spring Ai 05 ChatClient Advisor 实战(日志、提示词增强、内容安全)
java·开发语言·前端
hutengyi几秒前
Spring Boot 实战篇(四):实现用户登录与注册功能
java·spring boot·后端
tryCbest5 分钟前
Python之FastAPI 开发框架(第三篇):高级特性与实战
开发语言·python·fastapi
u0133945276 分钟前
How to Run sample.war in a Tomcat Docker Container
java·docker·tomcat
2301_776508729 分钟前
分布式系统监控工具
开发语言·c++·算法
splage9 分钟前
Spring Framework 中文官方文档
java·后端·spring
Irissgwe10 分钟前
Linux进程信号
linux·服务器·开发语言·c++·linux进程信号
暮冬-  Gentle°11 分钟前
C++与区块链智能合约
开发语言·c++·算法
JobDocLS12 分钟前
Bash调试方法
开发语言·bash
Oueii12 分钟前
C++中的代理模式实现
开发语言·c++·算法