Mybatis-plus3.4.3下使用lambdaQuery报错解决
作者:像素化创新
最近在使用lambdaQuery().eq(CommonUser::getOpenId, openId).one()进行查询报错,本文主要介绍了Mybatis-plus3.4.3下使用lambdaQuery报错解决,具有一定的参考价值,感兴趣的可以了解一下
在 MyBatis-Plus 中,当使用 lambdaQuery().eq(CommonUser::getOpenId, openId).one()
进行查询时,如果未找到匹配的记录,不会抛出异常,而是会返回 null
。
具体来说:
- 如果查询条件匹配到了数据库中的一条记录,则返回该记录。
- 如果查询条件没有匹配到任何记录,则返回
null
,而不会抛出异常。
CommonUser user = lambdaQuery().eq(CommonUser::getOpenId, openId).one(); if (user != null) { // 找到了匹配的用户 } else { // 没有找到匹配的用户 }
但是在写家政的时候 一直出现
org.apache.ibatis.builder.BuilderException: Error evaluating expression 'ew.sqlSegment != null and ew.sqlSegment != '' and ew.nonEmptyOfNormal'. Cause: org.apache.ibatis.ognl.OgnlException: sqlSegment [java.lang.ExceptionInInitializerError]
我以为是语句问题 断点也没问题 百思不得其解
最后通过查资料发现
这个错误通常是因为 MyBatis-Plus 版本与 java 版本不兼容引起的 我的mp版本是3.4.3
将java版本修改为11就可以了
到此这篇关于Mybatis-plus3.4.3下使用lambdaQuery报错的实现的文章就介绍到这了,更多相关Mybatis-plus3.4.3 lambdaQuery报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!