本文主要是介绍关于spring整合mybatis报错:Type handler was null on parameter mapping for property 'department'.,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这个错误的原因就是,你要传递的参数已经在mybatis文件中配置过了,而传递参数时又用的这个名字所以解析时出错。
例如我的resultMap中已经配置了userId,这是一个对象
<resultMap id="userDynamicMap" type="UserDynamicTO">
<result property="income" column="INCOME"/>
<association property="userId" javaType="UserTO">
<id property="id" column="ID"/>
</association>
</resultMap>
但是在参数表示时,我这表示的是主键id,而不是一个对象,所以要把#{userId}改成别的名字
<update id="noSpeak" parameterType="UserDynamicTO">
UPDATE USER_DYNAMIC SET FORBID_COMMIT_BEGIN_DATE = #{forbidCommitBeginDate},
FORBID_COMMIT_END_DATE = #{forbidCommitEndDate}
WHERE USER_ID = #{userId}
</update>
《================================================================================================================》
如下图所示:其实在User实体类中,我们已经把department传过去了,但是在关联表中,再一次使用department就会报错。
<insert id="add" parameterType="org.itat.model.User">
insert into t_user(username,password,nickname,department)
value(#{username},#{password},#{nickname},#{department.id});
</insert>
改正后应该为:《红色部分》和数据库一致即可
<insert id="add" parameterType="org.itat.model.User">
insert into t_user(username,password,nickname,dep_id)
value(#{username},#{password},#{nickname},#{department.id});
</insert>
这篇关于关于spring整合mybatis报错:Type handler was null on parameter mapping for property 'department'.的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!