首頁  >  文章  >  Java  >  mybatis傳回值用什麼接

mybatis傳回值用什麼接

(*-*)浩
(*-*)浩原創
2019-05-17 10:56:473666瀏覽

mybatis回傳值用什麼接?要看回傳的是什麼資料,一般常見的有:

mybatis傳回值用什麼接

一、傳回一般資料型別

例如要根據id 屬性取得資料庫中的某個欄位值。

mapper 介面:

// 根据 id 获得数据库中的 username 字段的值
String getEmpNameById(Integer id);

SQL 映射檔:

 <!-- 
        指定 resultType 返回值类型时 String 类型的,
        string 在这里是一个别名,代表的是 java.lang.String 

        对于引用数据类型,都是将大写字母转小写,比如 HashMap 对应的别名是 &#39;hashmap&#39;
        基本数据类型考虑到重复的问题,会在其前面加上 &#39;_&#39;,比如 byte 对应的别名是 &#39;_byte&#39;
    -->
    <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 返回值类型是集合内存储数据的类型,不是 &#39;list&#39;
    -->
    <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 返回值类型是 &#39;map&#39;
     -->
    <select id="getEmpAsMapById" resultType="map">
        select * from t_employee where id = #{id}
    </select>

以上是mybatis傳回值用什麼接的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn