在我使用MyBatis中使用Mapper接口的时候MyBatis出现以下错误:
"nested exception is org.apache.ibatis.builder.BuilderException: Error evaluating expression 'param.userId != null and param.userId !='' '. Cause: org.apache.ibatis.ognl.OgnlException: source is null for getProperty(null, \"userId\")",
而我的接口中是这样的
int selectXXXByUnionId(final Map<String, Object> param);
一开始我以为是Mapp.xml中的SQL语句中的判断逻辑出错了,然后仔细看看,认真对比过后并没有异常。
直到我回去再看Mapper接口才发现注解中@param注解没有标识到我的接口上面,修改后:
int selectXXXByUnionId(@Param("param") final Map<String, Object> param);
然后就解决这个问题了!
本文记录了一次使用MyBatis过程中遇到的问题,即在Mapper接口方法中未正确使用@param注解导致的异常。通过调整接口定义解决了SQL表达式评估错误的问题。
3024

被折叠的 条评论
为什么被折叠?



