在使用mybites的开发过程中,发现mapper类中不写@param声明参数名,有的同事正常使用;有的同事使用报错,在xml的sql中报错无法找到参数
1.初步判断是idea的版本问题,高版本idea正常,低版本报错
2.深入解析才发现版本问题的起因【-parameters,jdk8新增的参数,支持使用形参的参数名编译到class中;使mybites也可以取到class中的参数名作为key;不开启-parameters,方法签名中参数名会转换为无意义的arg0,arg1.。。。导致xml中的#{},${}参数注入找不到】
高版本的idea在导入maven项目是为每个模块做了以下默认配置;低版本idea需要手动配置如下