警惕,Mybatis的Size()方法竟然有坑!

系统运维2025-11-05 06:22:00435
警惕,Mybatis的Size()方法竟然有坑!
警惕复制### Error querying database.  Cause: org.apache.ibatis.builder.BuilderException: Error evaluating expression list != null and list.size() > 0. Cause: org.apache.ibatis.ognl.MethodFailedException: Method "size" failed for object [1] [java.lang.IllegalAccessException: Class org.apache.ibatis.ognl.OgnlRuntime can not access a member of class java.util.Collections$SingletonList with modifiers "public"]  ### Cause: org.apache.ibatis.builder.BuilderException: Error evaluating expression list != null and list.size() > 0. Cause: org.apache.ibatis.ognl.MethodFailedException: Method "size" failed for object [1] [java.lang.IllegalAccessException: Class org.apache.ibatis.ognl.OgnlRuntime can not access a member of class java.util.Collections$SingletonList with modifiers "public"]      at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23) org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:107)      at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:98)      at cn.com.shaobingmm.MybatisBugTest$2.run(MybatisBugTest.java:88)      at java.lang.Thread.run(Thread.java:745)  Caused by: org.apache.ibatis.builder.BuilderException: Error evaluating expression list != null and list.size() > 0. Cause: org.apache.ibatis.ognl.MethodFailedException: Method "size" failed for object [1] [java.lang.IllegalAccessException: Class org.apache.ibatis.ognl.OgnlRuntime can not access a member of class java.util.Collections$SingletonList with modifiers "public"]      at org.apache.ibatis.scripting.xmltags.OgnlCache.getValue(OgnlCache.java      at:47)      at org.apache.ibatis.scripting.xmltags.ExpressionEvaluator.evaluateBoolean(ExpressionEvaluator.java:29)      at org.apache.ibatis.scripting.xmltags.IfSqlNode.apply(IfSqlNode.java:30)      at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29)      at org.apache.ibatis.scripting.xmltags.TrimSqlNode.apply(TrimSqlNode.java:51)      at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29)      at org.apache.ibatis.scripting.xmltags.DynamicSqlSource.getBoundSql(DynamicSqlSource.java:37)      at org.apache.ibatis.mapping.MappedStatement.getBoundSql(MappedStatement.java:275)      at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:79)      at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:104)      ... 3 more  Caused by: org.apache.ibatis.ognl.MethodFailedException: Method "size" failed for object [1] [java.lang.IllegalAccessException: Class org.apache.ibatis.ognl.OgnlRuntime can not access a member of class java.util.Collections$SingletonList with modifiers "public"]      at org.apache.ibatis.ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:837)      at org.apache.ibatis.ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:61)      at org.apache.ibatis.ognl.OgnlRuntime.callMethod(OgnlRuntime.java:860)      at org.apache.ibatis.ognl.ASTMethod.getValueBody(ASTMethod.java:73)      at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)      at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)      at org.apache.ibatis.ognl.ASTChain.getValueBody(ASTChain.java:109)      at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)      at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)      at org.apache.ibatis.ognl.ASTGreater.getValueBody(ASTGreater.java:49)      at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)      at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)      at org.apache.ibatis.ognl.ASTAnd.getValueBody(ASTAnd.java:56)      at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)      at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)      at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:333)      at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:413)      at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:395)      at org.apache.ibatis.scripting.xmltags.OgnlCache.getValue(OgnlCache.java:45)      ... 12 more  1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.
本文地址:http://www.bzuk.cn/html/368b9499537.html
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

全站热门

电脑打印显示格式错误如何解决?(探讨常见电脑打印显示格式错误及其解决方法)

Web 隐藏技术:几中隐藏 Web 中的元素方法及优缺点

推荐一款IDEA生成代码神器,写代码再也不用加班了!

细谈8种架构设计模式

电脑登QQ错误的解决方法(解决电脑登QQ出现错误的实用技巧)

如何加速Python列表和字典让你的代码更加高效

5分钟解读Python中的链式调用

Java 多线程启动为什么调用 start() 方法而不是 run() 方法?

友情链接

滇ICP备2023006006号-33