溫馨提示×

MyBatis的resultType和resultMap有什么區(qū)別

小億
88
2024-03-07 16:45:27
欄目: 編程語言

MyBatis中的resultType和resultMap都是用來映射查詢結(jié)果到Java對象的,但它們有一些區(qū)別:

  1. resultType:resultType是用來指定單一結(jié)果對象的類型的,通常用在查詢結(jié)果只有一列的情況下,可以直接指定Java對象的類型作為結(jié)果類型。
<select id="selectUser" resultType="com.example.User">
    SELECT id, name FROM user
</select>
  1. resultMap:resultMap是用來指定復(fù)雜映射關(guān)系的,可以指定多個字段和Java對象之間的映射關(guān)系,可以實現(xiàn)一對一、一對多等復(fù)雜映射關(guān)系。
<resultMap id="userResultMap" type="com.example.User">
    <id property="id" column="id"/>
    <result property="name" column="name"/>
</resultMap>

<select id="selectUser" resultMap="userResultMap">
    SELECT id, name FROM user
</select>

總的來說,resultType適用于簡單的單一結(jié)果映射,而resultMap適用于復(fù)雜的多個字段映射到Java對象的情況。

0