一、报错分析
1. 控制台报错分析
Caused by: org.apache.ibatis.binding.BindingException: Parameter 'phone' not found. Available parameters are [arg1, arg0, param1, param2]
也就是phone参数找不到
2. 数据库报错分析
1054 - Unknown column '123qwe' in 'where clause'
加个 引号 数据就查出来了
但是,#{}参数占位符可以自主判断参数是否需要 + " ",所以传到数据库查询是上图结果。
二、错误原因
当使用多个单参数没有使用@Param注解进行标注的方式进行传值时,就会出现参数xxx找不到的问题。如下图这种没有加注解的
三、解决办法
1. 解决方式一
使用@Param注解进行标注的方式进行传值
2. 解决方式二
参数使用args…或param…
可用参数:arg0,arg1
可用参数:param1,param2