1 错误详情

mybatis invalid comparison: java.util.Date and java.lang.String

Caused by: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String
 at org.apache.ibatis.ognl.OgnlOps.compareWithConversion(OgnlOps.java:92)
 at org.apache.ibatis.ognl.OgnlOps.isEqual(OgnlOps.java:142)
 at org.apache.ibatis.ognl.OgnlOps.equal(OgnlOps.java:794)
 at org.apache.ibatis.ognl.ASTNotEq.getValueBody(ASTNotEq.java:53)
 at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
 at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:258)
 at org.apache.ibatis.ognl.ASTAnd.getValueBody(ASTAnd.java:61)
 at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
 at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:258)
 at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:494)
 at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:458)
 at org.apache.ibatis.scripting.xmltags.OgnlCache.getValue(OgnlCache.java:44)
 at org.apache.ibatis.scripting.xmltags.ExpressionEvaluator.evaluateBoolean(ExpressionEvaluator.java:32)
 at org.apache.ibatis.scripting.xmltags.IfSqlNode.apply(IfSqlNode.java:34)
 at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:33)
 at org.apache.ibatis.scripting.xmltags.TrimSqlNode.apply(TrimSqlNode.java:55)
 at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:33)
 at org.apache.ibatis.scripting.xmltags.DynamicSqlSource.getBoundSql(DynamicSqlSource.java:41)
 at org.apache.ibatis.mapping.MappedStatement.getBoundSql(MappedStatement.java:280)
 at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:80)
 at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:120)
 ... 7 more

原因就是mybatis 3.4.0中比较时间有个有bug,不能把时间当字符串比较,去掉

nextExecuteTime != '' 的判断即可

发表评论

电子邮件地址不会被公开。 必填项已用*标注

+ 66 = 72