ResultMapException: Error attempting to get column ‘username‘ from result set. 教大家根据控制台提示,排除异常

今天有伙伴,遇到这样一个提示,来问我怎么排除异常,

ResultMapException: Error attempting to get column 'username' from result set.  Cause: java.sql.SQLDataException: Cannot convert string '王五' to java.sql.Date value‘

异常分析:

结果映射异常,从结果集获取列username时错误。java中sql语句中的SQL数据异常:不能将字符串类型数据“王五”,转换成数据类型的值。

并且又有如下三行提示:

### The error may exist in RoleMapper.xml
### The error may involve com.itheima.mapper.RoleMapper.findAll
### The error occurred while handling results

 错误应该存在RoleMapper.xml  提示错误应该存在的位置

错误应该涉及:com.itheima.mapper.RoleMapper.findAll

错误发生在处理结果集时

根据提示的引导,很容易发现错误的出处

RoleMapper.xml:

<mapper namespace="com.itheima.mapper.RoleMapper">
    <!--
    自定义查询结果集映射
    -->
    <resultMap id="findAllResultMap" type="role">
      <id property="roleId" column="r_id"/>
      <result property="roleName" column="r_name" />
      <result property="roleDesc" column="r_desc"/>
     <!--
     <手动映射多对多>
     -->
    <collection property="userList" ofType="user">
       <id property="id" column="id"/>
        <result property="username" column="username"/>
        <result property="birthday" column="username"/>
        <result property="sex" column="sex"/>
        <result property="address" column="address"/>
    </collection>
    </resultMap>
<!--
   实现查询所有角色,并且关联查出该角色下的所有用户信息。
-->
    <select id="findAll" resultMap="findAllResultMap">
        SELECT r.r_id, r_name, r_desc,u.id, username, birthday, sex, address
        from role r left join user_role ur on r.r_id = ur.rid
                    left join user u on u.id=ur.uid;
    </select>
</mapper>

根据提示:很明显,错误在这

java 语句中的变量名与数据库中的列名,对应错了

改正后如下:

 

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值