日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MyBatis查询结果resultType返回值类型详细介绍

發布時間:2024/9/30 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MyBatis查询结果resultType返回值类型详细介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、返回一般數據類型

比如要根據 id 屬性獲得數據庫中的某個字段值。

mapper 接口:

// 根據 id 獲得數據庫中的 username 字段的值String getEmpNameById(Integer id);

SQL 映射文件:

<!-- 指定 resultType 返回值類型時 String 類型的,string 在這里是一個別名,代表的是 java.lang.String 對于引用數據類型,都是將大寫字母轉小寫,比如 HashMap 對應的別名是 'hashmap'基本數據類型考慮到重復的問題,會在其前面加上 '_',比如 byte 對應的別名是 '_byte'--><select id="getEmpNameById" resultType="string">select username from t_employee where id = #{id}</select>

二、返回 JavaBean 類型

比如根據某個字段獲得數據庫中的信息,把查詢的結果信息封裝成某個 JavaBean 類型的數據。

mapper 接口:

// 根據 id 查詢信息,并把信息封裝成 Employee 對象Employee getEmpById(Integer id);

SQL 映射文件:

<!-- 通過 resultType 指定查詢的結果是 Employee 類型的數據 只需要指定 resultType 的類型,MyBatis 會自動將查詢的結果映射成 JavaBean 中的屬性--><select id="getEmpById" resultType="employee">select * from t_employee where id = #{id}</select>

三、返回List類型

有時候我們要查詢的數據不止一條,比如:模糊查詢,全表查詢等,這時候返回的數據可能不止是一條數據,對于多數據的處理可以存放在List集合中。

mapper 接口:

// 假如是全表查詢數據,將查詢的數據封裝成 Employee 類型的集合List<Employee> getAllEmps();

SQL 映射文件:

<!--注意這里的 resultType 返回值類型是集合內存儲數據的類型,不是 'list'--><select id="getAllEmps" resultType="employee">select * from t_employee</select>

四、返回Map類型

MyBatis 還支持將查詢的數據封裝成Map。

1. 如果查詢的結果是一條,我們可以把查詢的數據以{表字段名, 對應的值}方式存入到Map中。

mapper 接口:

// 根據 id 查詢信息,并把結果信息封裝成 Map Map<String, Object> getEmpAsMapById(Integer id);

SQL 映射文件:

<!-- 注意這里的 resultType 返回值類型是 'map'--><select id="getEmpAsMapById" resultType="map">select * from t_employee where id = #{id}</select>

下面把查詢的結果數據貼出來供大家參考:

2. 如果查詢的結果是多條數據,我們也可以把查詢的數據以{表中某一字段名, JavaBean}方式來封裝成Map。

mapper 接口:

// 查詢所有員工的信息,把數據庫中的 'id' 字段作為 key,對應的 value 封裝成 Employee 對象// @MapKey 中的值表示用數據庫中的哪個字段名作 key@MapKey("id")Map<Integer, Employee> getAllEmpsAsMap();

SQL 映射文件:

<!--注意 resultType 返回值類型,不再是 'map',而是 Map 的 value 對應的 JavaBean 類型--><select id="getAllEmpsAsMap" resultType="employee">select * from t_employee</select>

下面是查詢的結果 (只截取了一部分):

MyBatis 允許查詢的結果封裝成Map,這種機制是極好的。

五、擴展

擴展. 上面返回結果的形式都是基于查詢 (select) 的,其實對于增刪改的操作也可以返回一定類型的數據,比如Boolean,Integer等。

總結. 這篇博文主要介紹了在開發中常用的幾種數據返回值類型,希望能夠為你提供幫助。

總結

以上是生活随笔為你收集整理的MyBatis查询结果resultType返回值类型详细介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。