参考:http://blog.csdn.net/viviju1989/article/details/17071909
是当我们的参数为String时,在sql语句中#{name} 会去我们传进来的参数调getName()方法获取参数,很明显,String没有对应的方法,所以报错了,那我们这里要如何引用name对象呢,需要采用下面的写法:
<select id="getData" parameterType="java.lang.String" resultType="DemoResult"> SELECT * FROM tbl_data <where> <if test="_parameter != null"> AND name= #{name} </if> </where> </select>
结论:当mybatis传参为单个参数时,在sql语句中需要使用_parameter 来引用这个参数