Mybatis遇到的问题
问题:
Caused by: org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'userName' in 'class java.lang.String'
分析:
那么什么情况下会发生“There is no getter for property named in ‘class
java.lang.String’”错误呢?
其实是在这种情况下:
<select id="findByUserName" resultMap="BaseResultMap" parameterType="String">
<if test="userName != null">
and userName = #{userName}
</if>
注意看,是在if test=验证的时候发生的 “There is no getter for property named in ‘class java.lang.String’”,
而并非是and userName = #{userName} 的时候发生的错误。
解决办法:
<select id="findByUserName" resultMap="BaseResultMap" parameterType="String">
<if test="_parameter != null">
and userName = #{userName}
</if>