码迷,mamicode.com
首页 > 其他好文 > 详细

Mybatis 字符串传参异常解析

时间:2018-05-31 19:36:07      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:@param

Caused by: org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'XXX' in 'class java.lang.String'  解析

异常信息如下:
技术分享图片

技术分享图片

技术分享图片

1.在DAO层,CardMapper.java接口里面 入参加上 @Param("XXX")

技术分享图片

2.在cardMapper.xml中 <if test="provCode != null"> 修改为 <if test="_parameter!= null"> ,<if></if>判断里面 AND tc.provCode = #{provCode} 不变;

如果没有<if test=””></if> , 就改为 AND tc.provCode = #{_parameter}

3.Mybatis默认采用ONGL解析参数,所以会自动采用对象树的形式取 string.xxx 值,如果没在在方法中定义,则会抛异常报错。

关于参数是否参与过滤的写法:
1)、if test中的参数名称不需要加${};
2)、${}和#{}的区别
      #{}是占位符,比${}更安全
      如果是in查询,一定需要用${},注意构造参数的格式如单引号


参考文献:https://blog.csdn.net/qing_gee/article/details/47122227

Mybatis 字符串传参异常解析

标签:@param

原文地址:http://blog.51cto.com/825272560/2122545

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!