问题描述:
Caused by: org.apache.ibatis.reflection.ReflectionException: Could not set property 'userId' of 'class UserDto' with value '123' Cause: java.lang.IllegalArgumentException: argument type mismatch
问题分析:
1、Mapper文件中的userId类型为String,但是实体类userId类型为Long,两边的类型不一致导致报错。
<resultMap type="com.dto.UserDto" id="dto">
<result property="userId" column="user_id" javaType="String"/>
</resultMap>
public class UserDto {
private Long userId;
}
解决办法:
(1)Mapper文件中的userId类型改为Long,实体类保持不变。
<resultMap type="com.dto.UserDto" id="dto">
<result property="userId" column="user_id" javaType="Long"/>
</resultMap>
(2) 实体类userId类型改为String,Mapper文件保持不变。
public class UserDto {
private String userId;
}