mybatis + lombok 出现 java.lang.IndexOutOfBoundsException
问题描述
在调用mybatis的查询语句时,报以下错误
但是这个查询语句单独查询是没有问题的
select id, name, mobile
FROM yca_appointment_user
WHERE weixin_openid = 'ovMet5I-_hDyMfBYFmPjKfXP8s' and del_flag = 0
LIMIT 1;
结果:
id name mobile
2 null null
debug调试时发现还没有进Mapper语句就报错了
后面在网上查找了下相关问题(可以参考 https://blog.csdn.net/qq_37186947/article/details/102160260),发现是是因为mybatis要把select出来的字段包装成Java对象时,找不到其构造函数中对应的字段。就是因为用了lombok的@Builder方法,这个注解生成了全参的构造函数,但没有这3个参数的构造器。