首页 > 其他分享 >​​<resultType>​​​ 和 ​​<resultMap>

​​<resultType>​​​ 和 ​​<resultMap>

时间:2024-01-17 10:05:01浏览次数:31  
标签: 映射 示例 结果 查询 user 类型

在 MyBatis 中,<resultType><resultMap> 都是用于映射查询结果的元素,它们分别用于指定简单类型和复杂类型的映射关系。以下是它们的简要说明:

1. <resultType>

<resultType> 用于指定返回结果的简单类型,通常是基本数据类型或包装类。当查询的结果只有一个简单类型时,可以使用 <resultType>

示例:

<select id="selectUserNameById" resultType="java.lang.String">
    SELECT user_name FROM users WHERE user_id = #{userId}
</select>

在这个示例中,查询返回的是一个用户名(java.lang.String 类型),因此使用了 <resultType>

2. <resultMap>

<resultMap> 用于定义复杂类型的映射关系,通常用于将查询结果映射到一个自定义的 Java 对象。这对于处理关联关系或者多表查询结果非常有用。

示例:

<resultMap id="userResultMap" type="com.example.User">
    <id property="userId" column="user_id"/>
    <result property="userName" column="user_name"/>
    <result property="email" column="email"/>
</resultMap>

<select id="selectUserById" resultMap="userResultMap">
    SELECT user_id, user_name, email FROM users WHERE user_id = #{userId}
</select>

在这个示例中,定义了一个名为 userResultMap<resultMap>,并指定了 User 类型。然后在查询语句中使用 resultMap 属性关联映射关系。

选择使用 <resultType> 还是 <resultMap>

  • 使用 <resultType> 主要适用于简单的查询,返回的结果是单一的基本类型或包装类型。
  • 使用 <resultMap> 更适用于复杂的查询,返回的结果需要映射到自定义的 Java 对象,或者涉及多表查询等情况。

根据你的查询需求,选择合适的方式来映射查询结果。

标签:,映射,示例,结果,查询,user,类型
From: https://blog.51cto.com/yang/9285396

相关文章