在MyBatis映射器中使用java.lang.Number

时间:2018-11-08 00:31:35

标签: java mybatis spring-mybatis

我刚刚将MyBatis版本从3.1.0升级到3.4.6,并开始出现以下问题。我有一个带有参数的类,该参数传递给MyBatis映射器。参数之一是java.lang.Number。原因是有时包含int,有时包含double。使用以前的MyBatis版本,它可以正常工作。有了这个,我得到:

java.lang.IllegalStateException: Type handler was null on parameter mapping for 
property '__frch_searchFilter_1.valueNum1'. It was either not specified and/or could 
not be found for the javaType (java.lang.Number) : jdbcType (null) combination.

映射器按如下方式访问值:

#{searchFilter.valueNum1}

该字段在类中的定义如下:

private Number valueNum1;

是否可以使用java.lang.Number并让MyBatis根据基础类/数据确定应使用DoubleTypeHandler还是IntegerTypeHandler

0 个答案:

没有答案