我试图将我的 spring 版本从 4 升级到 5.3.23 还将 Jackson 数据绑定更新为 2.13.5 这样做时我需要将 mybatis 从 3.0 升级到 3.5.11 还有 mybatis-spring 从 1.0 到 2.1.0
在升级过程中,我发现 mybatis 请求发生了奇怪的行为。
我收到一个错误 -
java.lang.IllegalStateException: Type handler was null on parameter mapping for property '__frch_token_1'. It was either not specified and/or could not be found for the javaType
(com.fasterxml.jackson.databind.node.ArrayNode): jdbcType (null) combination. ### Cause:
java.lang.IllegalStateException: Type handler was null on parameter mapping for property __frch_token_1'. It was either not specified and/or could not be found for the javaType
(com.fasterxml.jackson.databind.node.ArrayNode):
jdbcType (null) combination.
使用早期版本的mybatis,它工作正常。
似乎每个循环都在中断。
<select id="getByCriteria" resultMap="xyzResultMap">
<![CDATA[SELECT ]]>
<include refid="columns" />
<![CDATA[ FROM Table ]]> != null">
<if test="criteria <where>
<foreach collection "criteria" item="item" separator="AND">
<!-- column name -->
<choose>
<when tesst=‘“IId".equals (item.fieldName)">id</when>
<when test=""Name".equals(item.fieldName)"> iName</when>
<otherwise>/* unknown field name ${item.fieldName} */</otherwise>
</choose>
<!-- operator and search value -->
<choose>
<when test=""equals".equals(item.operator)'>= #{item.value}</when>
<when test=""iCaptains".equals(item.operator)'> like UPPER('%${item.value }%')</wh
<when test=""inSet".equals(item. operator)'><![CDATA[ IN (]]>
<foreach collection="item. value" item- "token" separator=", ">
<![CDATA[ #{token}]]>
</foreach><![CDATA[)]]>
/when>
<otherwise>/* unknown field name ${item.operator} */</otherwise>
</choose> </foreach>
</where>
</if>
有人可以给我关于这个问题的见解吗?