mybatis中对注释的解析问题Parameter index out of range (number of parameters, which is 4).

遇到的问题

Parameter index out of range (5 > number of parameters, which is 4).
最近在优化查询SQL语句的时候遇到了一个mybatis的坑
即如果你在mabatis中使用快捷键ctrl+/ 对代码进行注释的话,可能产生的注释结果是使用 – 或者 /**/ 对代码进行注释.如下所示

//如下所示,前两种注释方式有问题 ,第三种没有问题
--1 		    a1.id= #{companyId} 
/*2	       a1.id= #{companyId}  */


这个时候mybatis去解析这个注释,还会认为这个地方需要参数,但是实际上已经不需要了。即会报上面的错误:需要五个参数,但是只有四个

解决办法:

在mybatis中对代码进行注释的时候。如果代码中没有解析参数的部分,则使用-- 或者 /**/ 或者间括号 这三种方式都可以,但是如果代码中有解析参数的部分,使用前两种注释方式会报错,使用 间括号这种注释就没有问题。如下所示




类似的文章链接
https://blog.csdn.net/GarfieldEr007/article/details/90261399

你可能感兴趣的:(mybatis,mybatis,sql)