溫馨提示×

Mybatis中resultMap和resultType有什么區別

小億
91
2023-12-22 12:08:56
欄目: 編程語言

在Mybatis中,resultMap和resultType是用來映射查詢結果集的兩種不同的方式。

  1. resultType是指定查詢結果的類型,可以是基本類型(如int、String等)或者自定義的Java對象類型。當查詢結果只有一個列時,可以使用resultType直接指定列的類型。示例:
<select id="getUserCount" resultType="int">
    SELECT COUNT(*) FROM users
</select>
  1. 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對象中,并且可以進行一些額外的映射規則的配置。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女