300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > mybatis学习2之ResultMap结果集映射

mybatis学习2之ResultMap结果集映射

时间:2022-02-05 12:07:14

相关推荐

mybatis学习2之ResultMap结果集映射

前言

当实体类的属性和数据库的字段无法对应时我们改怎么办呢?

这里我们一起来学习ResultMap结果映射集

1.ResultMap是什么?

resultMap元素用来描述如何将结果集映射到Java对象,使用resultMap对列表展示所需的必要字段来进行自动映射,特别是当数据库的字段名和实体类POJO中的属性名不一致的情况下,比如:字段名/列名column是pwd,而User对象的属性名则为password,此时就需要做映射。

ResultMap 元素的属性值和子节点,在这里我们只需要了解这两个就好了

- id 属性:唯一标识,此id值用于select元素resultMap属性的引用。

-type 属性:表示该resultMap的映射结果类型。

2.什么时候使用ResultMap

一般我们在Mybatis中使用查询语句的时候,如果查询到的结果不能使用resultType反应出来的时候,可以采用resultMap标签来解决数据查询不到的困难问题。

二、使用步骤

1.返回类型ResultMap

<!--此处的select * 就是查询数据库中这个表所有的字段--><select id="getUserById" resultMap="userMap" parameterType="int">select id, name, pwd from mybatis.user where id=#{id}</select>

2.使用resultMap标签

<!--resultMap和resultType区别resultType只能返回属性与字段相对应的resultMao能返回字段与属性不对应的--><resultMap id="userMap" type="user"><!--column对应的就是数据库的(列)字段,property对应的就是实体类中的属性--><result column="id" property="id"></result><result column="name" property="name"></result><result column="pwd" property="password"></result></resultMap>

总结

当数据库的字段名和实体类POJO中的属性名不一致的情况下,比如:字段名/列名column是pwd,而User对象的属性名则为password,此时就需要做映射。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。