[MyBatis]-12 resultMap


prtyaa
prtyaa 2023-12-27 16:22:29 67264
分类专栏: 资讯

之前我们用的实体类的属性名和我们表中的列名实际上是一致的,但是实际开发过程中这样的情况比较少,之前是为了做演示所以才使用一致,方便查看,但实际开发过程中,这样的情况相对的比较少,所以就要使用下面这个标签

<resultMap> 标签

实际上就是解决列名和属性名不一致的问题

在mybatis中存在一个机制叫做自动映射机制(auto_mapping)

自动映射实际上就算mybatis中会将数据库中同名的列名和实体的属性名一一对应,如果找到就会自动赋值实体的属性上

解决方式1(不推荐)

在sql语句中取别名

select id use_id , usename userName from tb_user

解决方式2

使用resunltMap 标签

type:将来数据封装成的类型

id :唯一标识 /用于映射主键

result : 非主键使用result映射

column 数据库列名

property 实体属性名

    <resultMap id="user" type="umap">
        <!-- id用于映射主键
            column 数据库列名
            property 实体属性名
        -->
        <id column="id" property="userId"/>
        <!-- 非主键使用result映射-->
        <result column="username" property="userName"/>
        <result column="password" property="passWord"/>
    </resultMap>

    <select id="sleUser" resultMap="umap">
        select * from tb_user
    </select>

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:https://www.xckfsq.com/news/show.html?id=31582
赞同 0
评论 0 条