美文网首页
Mybatis输出映射

Mybatis输出映射

作者: 神豪VS勇士赢 | 来源:发表于2018-07-29 09:56 被阅读0次

    输出映射就是返回结果[针对查询]

    返回结果有如下两种形式:

    resultType
    需要查询的列名和映射对象的属性名一致,才能映射成功。
    若查询的sql列名有别名,这个别名就是和属性映射的列名。
    案例:带下划线字段查询测试;别名映射成功确认。

    resultMap
    不需要查询的列名和映射的属性名必须一致。但是需要声明一个resultMap,来对列名和属性名进行映射。

    没有映射成功的情况: 发现输出信息为空 看,证明这是没有映射成功


    image.png

    问题的解决方案:
    1.1. 方案一:加别名


    image.png

    学会使用调试:


    image.png

    1.2. 方案二:使用resultMap
    <resultMap id="BaseResultMap" type="com.qf.pojo.Userinfo">

    <id column="uid" jdbcType="BIGINT" property="uid" />

    <result column="user_name" jdbcType="VARCHAR" property="userName" />
    <result column="user_pass" jdbcType="VARCHAR" property="userPass" /> </resultMap>

    把数据库中表的字段和POJO中的属性名称做了一一映射。所以就解决了下划线的问题。


    image.png
    image.png

    SQL片段:
    可以把公共的部分抽取出来:
    <sql id="Base_Column_List"> uid, user_name, user_pass </sql>


    image.png

    上面两种解决方案,就解决了数据库表中字段名称和POJO中属性名称不一致的问题。

    当我们使用Mybatis插件的时候自动生成的代码就是按照 resultMap 做输出映射。

    相关文章

      网友评论

          本文标题:Mybatis输出映射

          本文链接:https://www.haomeiwen.com/subject/mplzmftx.html