MyBaties常見BUG

如下異常:

nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='userName', mode=IN, javaType=class java.lang.String, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #2 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.sql.SQLException: Parameter index out of range (2 > number of parameters, which is 1).(String)

對應Mapper.xml文件如下:

<select id="selectUserByUserName" parameterType="String" resultMap="SysUserResult">
	    <!--<include refid="selectUserVo"/>-->
		/*where u.user_name = #{userName}*/
		select u.user_id, u.dept_id, u.user_name, u.nick_name,
        IFNULL(zu.nick_name,'') as screen_name,
        IFNULL(zu.nick_name_update_count,'') as update_count,
		u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
		d.parent_id, d.dept_name, d.order_num, d.leader, d.status as dept_status,
		r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
		from sys_user u
		left join sys_dept d on u.dept_id = d.dept_id
		left join sys_user_role ur on u.user_id = ur.user_id
		left join sys_role r on r.role_id = ur.role_id
        left join zbkf_user zu on u.user_name = zu.job_no
		where u.user_name = #{userName}
	</select>

異常原因是:mapper.xml中的註釋,去掉即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章