MyBatis报错Parameter 'index' not found. Available parameters are [arg1, arg0, param1, param2]的解决方法

Parameter ‘index’ not found. Available parameters are [arg1, arg0, param1, param2]

以前使用的都是xml访问的数据库,今天使用了mybatis注解,在用到分页查询的时候报了一个错误,如图:
在这里插入图片描述
1.这是mybatis的特性,如果方法参数只有一个且不是对象类型,占位符就可以随意定义
2.如果涉及到多个占位符,就不可以随意定义,

方法一:要使用#{arg0},#{arg1}…

 @Select("SELECT * FROM USER LIMIT #{arg0},#{arg1}")
 List findByPage2(int index,int count); 

其中#{arg0}对应的是第一个占位符,那么#{arg1}对应的就是第二个占位符。

方法二:在方法的形参处使用注解@Param("…")绑定占位符。

@Select("SELECT * FROM USER LIMIT #{index},#{count}") 
List findByPage3(@Param("index") int index, @Param("count") int count);

我使用了第二种方法演示一下:
在这里插入图片描述
执行测试代码:
MyBatis报错Parameter 'index' not found. Available parameters are [arg1, arg0, param1, param2]的解决方法_第1张图片
输出结果:
在这里插入图片描述

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