最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MyBatis的各種查詢功能結(jié)果接收類型的選擇(推薦)

 更新時間:2024年11月21日 11:06:37   作者:雷神樂樂  
文章介紹了MyBatis中查詢結(jié)果的不同接收方式,包括單條數(shù)據(jù)和多條數(shù)據(jù)的處理方法,以及MyBatis的默認類型別名,感興趣的朋友跟隨小編一起看看吧

一、若查詢出的數(shù)據(jù)只有一條

1.可以通過實體類對象接收

User getUserById(@Param("id") Integer id);
<select id="getUserById" resultType="User">
    select *
    from t_user
    where id = #{id};
</select>

2.可以通過list集合接收

List<User> getUserById(@Param("id") Integer id);

3.可以通過map集合接收

Map<String, Object> getUserByIdToMap(@Param("id") Integer id);
<select id="getUserByIdToMap" resultType="java.util.Map">
    select *
    from t_user
    where id = #{id};
</select>

結(jié)果:{password=123456, sex=男, id=3, age=23, email=12345@qq.com, username=admin}

二、若查詢出的數(shù)據(jù)有多條

1.可以通過實體類類型的list集合接收

List<User> getAllUser();
<select id="getAllUser" resultType="User">
    select *
    from t_user;
</select>

2.可以通過map類型的list集合接收

List<Map<String, Object>> getUsersByIdToMap(@Param("id") Integer id);
<select id="getUsersByIdToMap" resultType="java.util.Map">
    select *
    from t_user
    where id = #{id};
</select>
@Test
public void testGetUsersByIdToMap() {
    SqlSession sqlSession = SqlSessionUtils.getSqlSession();
    SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
    List<Map<String, Object>> users = mapper.getUsersByIdToMap(6);
    users.forEach(System.out::println);
    // {password=789789, sex=男, id=6, age=25, email=456123@qq.com, username=李四}
}

3.可以在mapper接口的方法上添加@MapKey注解

@MapKey("id")
Map<String, Object> getAllUserToMap();

此時就可以將每條數(shù)據(jù)轉(zhuǎn)換的map集合作為值,以某個字段的值作為鍵,放在同一個map集合中

注意:一定不能通過實體類對象接收,此時會拋異常TooManyResultsException

MyBatis中設置了默認的類型別名:

  • java.lang.Integer-->int,integer
  • int-->_int,_integer
  • Map-->map
  • String-->string

到此這篇關(guān)于MyBatis的各種查詢功能,結(jié)果接收類型的選擇的文章就介紹到這了,更多相關(guān)MyBatis內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java基礎鞏固系列包裝類代碼實例

    Java基礎鞏固系列包裝類代碼實例

    這篇文章主要介紹了Java包裝類,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • Java基礎學習之接口詳解

    Java基礎學習之接口詳解

    接口,是Java語言中一種引用類型,是方法的集合,如果說類的內(nèi)部封裝了成員變量、構(gòu)造方法和成員方法,那么接口的內(nèi)部主要就是封裝了方法。本文通過一些示例詳細為大家展示了接口的使用,需要的可以參考一下
    2022-10-10
  • Java編程中利用InetAddress類確定特殊IP地址的方法

    Java編程中利用InetAddress類確定特殊IP地址的方法

    這篇文章主要介紹了Java編程中利用InetAddress類確定特殊IP地址的方法,InetAddress類是Java網(wǎng)絡編程中一個相當實用的類,需要的朋友可以參考下
    2015-11-11
  • Java實現(xiàn)銀行賬戶管理子系統(tǒng)

    Java實現(xiàn)銀行賬戶管理子系統(tǒng)

    這篇文章主要為大家詳細介紹了Java實現(xiàn)銀行賬戶管理子系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 在Java下利用log4j記錄日志的方法

    在Java下利用log4j記錄日志的方法

    本文先對log4j進行了簡短的介紹,而后通過安裝、配置和普通項目和web項目幾個方面來詳細介紹了在Java下利用log4j記錄日志的方法,有需要的朋友們可以參考借鑒。
    2016-09-09
  • Jmeter邏輯控制器事務控制器使用方法解析

    Jmeter邏輯控制器事務控制器使用方法解析

    這篇文章主要介紹了Jmeter邏輯控制器事務控制器使用方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • Spring Boot整合QueryDSL的實現(xiàn)示例

    Spring Boot整合QueryDSL的實現(xiàn)示例

    這篇文章主要介紹了Spring Boot整合QueryDSL的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Java線程之程安全與不安全代碼示例

    Java線程之程安全與不安全代碼示例

    這篇文章主要介紹了Java線程之程安全與不安全代碼示例,還是比較不錯的,這里分享給大家,供需要的朋友參考。
    2017-11-11
  • Java設計模式之責任鏈模式

    Java設計模式之責任鏈模式

    今天小編就為大家分享一篇關(guān)于Java設計模式之責任鏈模式,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Mybatis-plus通過添加攔截器實現(xiàn)簡單數(shù)據(jù)權(quán)限

    Mybatis-plus通過添加攔截器實現(xiàn)簡單數(shù)據(jù)權(quán)限

    系統(tǒng)需要根據(jù)用戶所屬的公司,來做一下數(shù)據(jù)權(quán)限控制,具體一點,就是通過表中的company_id進行權(quán)限控制,項目使用的是mybatis-plus,所以通過添加攔截器的方式,修改查詢sql,實現(xiàn)數(shù)據(jù)權(quán)限,本文就通過代碼給大家詳細的講解一下,需要的朋友可以參考下
    2023-08-08

最新評論

西乌| 滨州市| 汽车| 固始县| 曲阳县| 佛教| 安康市| 静宁县| 郸城县| 讷河市| 金乡县| 文登市| 尚志市| 时尚| 潼关县| 昭通市| 南漳县| 平乡县| 盐亭县| 车险| 龙岩市| 门源| 休宁县| 东兰县| 凉城县| 都兰县| 常宁市| 林芝县| 万载县| 拉孜县| 滕州市| 泸州市| 博兴县| 屏南县| 唐山市| 河北省| 嘉定区| 文成县| 高密市| 绥江县| 岳普湖县|