Mybatis中传参包There is no getter for property named XXX in class java.lang.String
一、發現問題
<select id="queryStudentByNum" resultType="student" parameterType="string"> ?
select num,name,phone from student ?
<where>?
<if test = " num!=null and num!='' ">
AND num = #{num}
</if>
</where>
</select>?
Mybatis查詢傳入一個字符串傳參數,報There is no getter for property named 'num' in 'class java.lang.String'。
二、解決問題
<select id="queryStudentByNum" resultType="student" parameterType="string"> ?
select num,name,phone from student ?
<where>?
<if test = "?_parameter!=null and_parameter!='' ">
AND num = #{_parameter}
</if>
</where>
</select>
無論參數名,都要改成"_parameter"。
三、原因分析
Mybatis默認采用ONGL解析參數,所以會自動采用對象樹的形式取string.num值,引起報錯。也可以public List methodName(@Param(value="num") String num)的方法說明參數值
參考博客:
http://blog.sina.com.cn/s/blog_86e49b8f010191hw.html
http://txin0814.iteye.com/blog/1533645
?
轉載于:https://blog.51cto.com/woshixy/1180914
總結
以上是生活随笔為你收集整理的Mybatis中传参包There is no getter for property named XXX in class java.lang.String的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软考计算机网络原理之IP计算问题汇总
- 下一篇: eclipse的默认(打开)编辑器的更改