报错

在进行分页查询时出现了如下错误:

org.apache.ibatis.binding.BindingException: Parameter 'pageNum' not found. Available parameters are [arg1, arg0, param1, param2]

在这里插入图片描述

分析原因

意思就是报错内容说无法获取名为’pageNum’的元素,可以获取的元素是[arg1, arg0, param1, param2]。我们的mybatis没有获取这个参数。

解决

我的代码块

@Select("select * from user Limit #{pageNum}, #{pageSize}")
List<User> selectPage(Integer pageNum, Integer pageSize);

修改正确之后的代码块

List<User> selectPage(@Param("pageNum") Integer pageNum, @Param("pageSize") Integer pageSize);

修改之后在也是成功的获取了分页内容
在这里插入图片描述
在这里插入图片描述
使用注解@Param(“XXX”)来完成。

1.当只有一个参数时,Mapper/Dao层中的方法是可以不使用注解的。比如插入数据的时候:

public void insertAdmin(String username);

2.多个参数时必须用@Param(“XXX”)来指明:
比如做登录验证的时候:

public void insertAdmin(@Param("username")String username,@Param("password")String password);

此时在运行就不会再报错了。

注意

在Mapper上使用@select注解编写SQL语句,就不能在xml文件中编写对应的SQL语句,不然会报错,二中择一,建议还是在xml中写SQL语句,规范代码。

Logo

鸿蒙生态一站式服务平台。

更多推荐