org.apache.ibatis.binding.BindingException

文章讲述了在Java中使用@Select注解进行多条件分页查询时遇到的参数解析错误,提示方法里的参数未被正确识别。通过在参数前添加@Param注解解决了问题,确保了SQL语句的正确执行。
摘要由CSDN通过智能技术生成

在使用多条件查询的时候,使用@select注解写SQL语句报错:

服务器报500

后台错误显示:

报错源码定位:

/*
    * 分页查询
    * */
    @Select("select * from `user` where username like concat('%',#{username},'%') and name like concat('%',#{name},'%') order by id desc limit #{pageSkip},#{pageSize}")
    List<User> selectByPage(Integer pageSkip,Integer pageSize, String username, String name);

    /*
    * 分页查询的总数计数
    * */
    @Select("select count(id) from `user` where username like concat('%',#{username},'%') and name like concat('%',#{name},'%') order by id desc")
    Integer selectByPageCount(String username,String name);

原因:方法里传递的参数解析不了,所以后台报错说参数没有找到

解决方法:在每个参数前面加上@Param(" ")注解即可

/*
    * 分页查询
    * */
    @Select("select * from `user` where username like concat('%',#{username},'%') and name like concat('%',#{name},'%') order by id desc limit #{pageSkip},#{pageSize}")
    List<User> selectByPage(@Param("pageSkip") Integer pageSkip, @Param("pageSize") Integer pageSize, @Param("username") String username, @Param("name") String name);
    
    /*
    * 分页查询的总数计数
    * */
    @Select("select count(id) from `user` where username like concat('%',#{username},'%') and name like concat('%',#{name},'%') order by id desc")
    Integer selectByPageCount(@Param("username") String username, @Param("name") String name);

如上,添加上注解就能成功了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值