报错:
原因:
在MyBatis的XML配置文件中或者使用MyBatis注解时,指定的参数名称与方法中的参数名称不匹配或找不到参数名称。
原代码:
Integer businessNumsFromClue(String beginCreateTime, String endCreateTime);
更改后:
Integer businessNumsFromClue(@Param("beginCreateTime")String beginCreateTime, @Param("endCreateTime")String endCreateTime);
修改方式:
加入@Param注解
,@Param注解的作用是为方法的参数指定名称,以便在MyBatis的SQL语句中能够准确地引用这些参数。
也可能是其他问题:
-
SQL 映射文件中没有正确定义参数名:请确保在 SQL 映射文件中正确指定了参数名为 'record' 的参数。你可以使用 #{record} 来引用该参数。
-
参数名与方法签名不匹配:检查方法签名和 SQL 映射文件中定义的参数名是否一致。如果方法参数名为 'record',则 SQL 映射文件中应该使用 #{record} 来引用该参数。
-
参数未传递给 MyBatis 方法:确认在调用 MyBatis 方法时是否正确传递了参数 'record'。例如,如果使用 MyBatis 的 insert、update 或 delete 方法,需要将参数对象作为参数传递给对应的方法。
-
参数类型不匹配(可能性较大):如果参数类型与 SQL 映射文件中定义的参数类型不匹配,也会导致该错误。请确保参数类型与映射文件中定义的类型一致。