在调用dao层中的接口出现了下面的错误
Caused
by: org.apache.ibatis.binding.BindingException: Parameter
'id' not found. Available parameters are [
1,
0, param1, param2]
从字面上的意思是无法完成id参数的绑定。
google之后查明这是java编程语言的一个问题,就是java没有保存行参的记录,java在运行的时候回把
int findUserById(
int id,
int num);
中的参数变成
int findUserById(
int arg0,
int arg1);
解决办法:
这样就没有办法去传递多个参数,此时需要在接口中修改方法
int findUserById(
@Param(
"id")
int id,
@Param(
"num")
int num);
这样才能使mybatis识别id和num两个参数,将Dao层中的这两个参数与xml映射文件中sql语句的传入参数完成映射。
然后再次运行,测试通过!