在执行mybatis内的方法时报错 not find getter for property。。。花了很长时间才解决问题,原因是mybatis中<if test="....">这里的测试条件有问题,如果mybatis中某sql的传入参数为简单类型,则<if test="....">中校验参数时参数名称只能是写mybatis底层默认的
_parameter,不能写该sql的对应的Dao中方法的传入参数名称,如果传入参数时复杂对象且为单个参数时,如map或自定义类对象,则在<if test="...">中直接用传入参数的属性名就可以了,如<if test="name != null and name != ' ' ">,如果传入参数为两个以上的复杂参数,则第一个参数为0,第二个为1,第三个为2,如<if test="0.name != null and 0.name != ' ' ">,如果第一个传入参数为复杂参数,第二个传入参数为简单类型,别纠结了,把多个参数的通通放在一个map里面,把该方法改为传入参数为map型就好了。
mybatis not find getter for property。。。
最新推荐文章于 2024-07-30 15:35:55 发布