阅读量:2
在Mybatis中,resultMap和resultType是用来映射查询结果集的两种不同的方式。
- resultType是指定查询结果的类型,可以是基本类型(如int、String等)或者自定义的Java对象类型。当查询结果只有一个列时,可以使用resultType直接指定列的类型。示例:
<select id="getUserCount" resultType="int"> SELECT COUNT(*) FROM users </select>
- resultMap是通过定义一个映射关系来将查询结果集的列映射到Java对象的属性上。在resultMap中,可以指定每个列对应的属性、类型、以及一些额外的映射规则。示例:
<resultMap id="userResultMap" type="User"> <id property="id" column="id" /> <result property="name" column="name" /> <result property="age" column="age" /> </resultMap> <select id="getUserById" resultMap="userResultMap"> SELECT * FROM users WHERE id = #{id} </select>
总结:
- resultType适用于简单的查询,只返回一个基本类型或者简单对象。
- resultMap适用于复杂的查询,可以将查询结果映射到自定义的Java对象中,并且可以进行一些额外的映射规则的配置。