org.apache.ibatis.binding.BindingException

来源:今天写sql报了一个错误,这里记录一下。

最开始的写法:

/**
     *
     * @param date1 当天零时
     * @param date2 当天23.59.59
     * @return
     */
    @Select("SELECT COUNT(*) FROM ums_member WHERE create_time > #{date1} AND create_time < #{date2}")
    int todaySum(Date date1, Date date2);

此时报错:org.apache.ibatis.binding.BindingException: Parameter 'date1' not found. Available parameters are [arg1, arg0, param1, param2] 大体意思就是参数错误,没有找到这个参数。

此时加个注解即可解决 @Param()。
@Param注解的作用是给参数命名,参数命名后就能根据名字得到参数值,正确的将参数传入sql语句中。

    /**
     *
     * @param date1 当天零时
     * @param date2 当天23.59.59
     * @return
     */
    @Select("SELECT COUNT(*) FROM ums_member WHERE create_time > #{date1} AND create_time < #{date2}")
    int todaySum(@Param("date1") Date date1, @Param("date2")Date date2);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容