溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mybatis返回值如何接收的案例

發(fā)布時(shí)間:2020-11-02 12:23:48 來(lái)源:億速云 閱讀:541 作者:小新 欄目:編程語(yǔ)言

小編給大家分享一下mybatis返回值如何接收的案例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

 mybatis返回值用什么接?要看返回的是什么數(shù)據(jù),一般常見(jiàn)的有:

一、返回一般數(shù)據(jù)類(lèi)型

比如要根據(jù) id 屬性獲得數(shù)據(jù)庫(kù)中的某個(gè)字段值。

mapper 接口:

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

SQL 映射文件:

 <!-- 
        指定 resultType 返回值類(lèi)型時(shí) String 類(lèi)型的,
        string 在這里是一個(gè)別名,代表的是 java.lang.String 

        對(duì)于引用數(shù)據(jù)類(lèi)型,都是將大寫(xiě)字母轉(zhuǎn)小寫(xiě),比如 HashMap 對(duì)應(yīng)的別名是 'hashmap'
        基本數(shù)據(jù)類(lèi)型考慮到重復(fù)的問(wèn)題,會(huì)在其前面加上 '_',比如 byte 對(duì)應(yīng)的別名是 '_byte'
    -->
    <select id="getEmpNameById" resultType="string">
        select username from t_employee where id = #{id}
    </select>

二、返回 JavaBean 類(lèi)型

比如根據(jù)某個(gè)字段獲得數(shù)據(jù)庫(kù)中的信息,把查詢的結(jié)果信息封裝成某個(gè) JavaBean 類(lèi)型的數(shù)據(jù)。

mapper 接口:

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

SQL 映射文件:

 <!-- 
        通過(guò) resultType 指定查詢的結(jié)果是 Employee 類(lèi)型的數(shù)據(jù)  
        只需要指定 resultType 的類(lèi)型,MyBatis 會(huì)自動(dòng)將查詢的結(jié)果映射成 JavaBean 中的屬性
    -->
    <select id="getEmpById" resultType="employee">
        select * from t_employee where id = #{id}
    </select>

三、返回List類(lèi)型

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

mapper 接口:

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

SQL 映射文件:

<!--
        注意這里的 resultType 返回值類(lèi)型是集合內(nèi)存儲(chǔ)數(shù)據(jù)的類(lèi)型,不是 'list'
    -->
    <select id="getAllEmps" resultType="employee">
        select * from t_employee
    </select>

四、返回Map類(lèi)型

MyBatis 還支持將查詢的數(shù)據(jù)封裝成Map。

1. 如果查詢的結(jié)果是一條,我們可以把查詢的數(shù)據(jù)以{表字段名, 對(duì)應(yīng)的值}方式存入到Map中。

mapper 接口:

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

SQL 映射文件:

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

以上是mybatis返回值如何接收的案例的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI