`
53873039oycg
  • 浏览: 825939 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

[简单]mybatis判断数字类型

 
阅读更多

       昨天同事反馈mybatis保存不了int类型的属性,一直报错,错误信息如下:

     

Caused by: java.lang.NumberFormatException: For input string: "null"
	at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
	at sun.misc.FloatingDecimal.parseDouble(Unknown Source)
	at java.lang.Double.parseDouble(Unknown Source)
	at org.apache.ibatis.ognl.OgnlOps.doubleValue(OgnlOps.java:259)
	at org.apache.ibatis.ognl.OgnlOps.compareWithConversion(OgnlOps.java:144)
	at org.apache.ibatis.ognl.OgnlOps.isEqual(OgnlOps.java:186)
	at org.apache.ibatis.ognl.OgnlOps.equal(OgnlOps.java:578)
	at org.apache.ibatis.ognl.ASTNotEq.getValueBody(ASTNotEq.java:51)
	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.builder.xml.dynamic.OgnlCache.getValue(OgnlCache.java:42)
	at org.apache.ibatis.builder.xml.dynamic.ExpressionEvaluator.evaluateBoolean(ExpressionEvaluator.java:32)
	at org.apache.ibatis.builder.xml.dynamic.IfSqlNode.apply(IfSqlNode.java:30)
	at org.apache.ibatis.builder.xml.dynamic.MixedSqlNode.apply(MixedSqlNode.java:29)
	at org.apache.ibatis.builder.xml.dynamic.TrimSqlNode.apply(TrimSqlNode.java:42)
	at org.apache.ibatis.builder.xml.dynamic.MixedSqlNode.apply(MixedSqlNode.java:29)
	at org.apache.ibatis.builder.xml.dynamic.MixedSqlNode.apply(MixedSqlNode.java:29)
	at org.apache.ibatis.builder.xml.dynamic.DynamicSqlSource.getBoundSql(DynamicSqlSource.java:37)
	at org.apache.ibatis.mapping.MappedStatement.getBoundSql(MappedStatement.java:241)
	at org.apache.ibatis.executor.statement.BaseStatementHandler.<init>(BaseStatementHandler.java:61)
	at org.apache.ibatis.executor.statement.PreparedStatementHandler.<init>(PreparedStatementHandler.java:36)
	at org.apache.ibatis.executor.statement.RoutingStatementHandler.<init>(RoutingStatementHandler.java:42)
	at org.apache.ibatis.session.Configuration.newStatementHandler(Configuration.java:348)
	at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:43)
	at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:108)
	at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:75)
	at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:145)
	... 51 more
	
	
	
	




		









	
	



 

   对应配置为:

   

<if test="downNum!=null and downNum!='null' and downNum!=''">
				#{downNum}
			</if>

    错误原因是使用了判断String的条件判断数字类型,正确方式是:

   

<if test="downNum>=0">
	#{downNum}
</if>

   

  

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics