org.apache.ibatis.binding.BindingException: Parameter 'nickname' not found. Available parameters are

在使用mybatis遇到了一个找不到参数的问题,本着学习的态度跟了下源码,通过一步一步的源码发下,mybatis默认使用参数下标做为参数名称对参数赋值,即0、一、2等等这些参数名称,只有当使用注解显示标注参数名称才会使用指定的参数名称,举例说明状况sql

        栗子1 apache

在mapper的xml文件中的sql以下mybatis

       select id,username,password  from u_user  where  username=#{username} and passsword=#{password}app

      mapper类中以下学习

     User  getUser(String username,String password)xml

     则上面写法就会报org.apache.ibatis.binding.BindingException: Parameter 'nickname' not found错误get

缘由以下:源码

org.apache.ibatis.binding.BindingException: Parameter nickname not found. Available parameters are [1, 0, param1, param2] - m15627293516 - 许康銮我的博客

 解决办法:博客

1 sql改成:select id,username,password  from u_user  where  username=#{0} and passsword=#{1}io

2 使用注解指定参数名称:

User  getUser(@Param("username")String username,@Param("password")String password)

相关文章
相关标签/搜索