在使用ibatis的时候报这个错误,挺常见,一般我们就会去检查SQL查询的字段和resultMap是否对应。
可是这次经过我仔细的检查之后,发现写的都是对的。只好采用排除法来检查错误。
首先把报错的字段、属性在SQL和resultMap中分别去掉,去掉之后呢,依旧报错,但是报错信息变了——check the paramter mapping for the ‘xxx’ property。
这次变成了入参错误,但是我其他几个方法也用到了相同的参数啊,并没有报错。所以这次去掉筛选条件,没有入参,只有一段干巴巴的SQL,再次重启项目,查询 ,终于暴露了错误——quoted string not properly terminated
原因是我的查询SQL中出现了中文,并且控制台打印出的SQL,中文也变成了乱码,之前控制台都是没有打印这段代码的。
于是把xml文件的encoding改成GBK,eclipse工具text file encoding也改成GBK,解决!