记一次mybatis<if>标签的问题

前言

到底还是没理解清楚的锅~~~~搞了好久。。。啊啊啊啊

错误

There is no getter for property named 'name' in 'class java.lang.Long'

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'name' in 'class java.lang.Long'

xml

dao层

分析

传值的时候,mybatis不知道这个值时传给谁(id、name);索性就把这个id值给了id和name

解决方式

  保持sql不变,在dao层把参数换成map类型:

 

dao层

这样子,只要后台controller调用(service)方法时,只要params.put("id","xxx");params.put("name","xxx");

这样就分清传谁给谁。

参考文章:https://www.cnblogs.com/gmq-sh/p/5624781.html 写得很不错!

猜你喜欢

转载自www.cnblogs.com/yuanmaolin/p/10880760.html