亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

淺談mybatisPlus的Ipage分頁和map參數(shù)的問題

 更新時間:2021年12月20日 14:16:20   作者:L-歲月染過的夢  
這篇文章主要介紹了mybatisPlus的Ipage分頁和map參數(shù)的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

mybatisPlus的Ipage分頁和map參數(shù)

前提:先有一個map類型的參數(shù)

Map params= new HashMap();
params.put("name","張三");
params.put("age","23");

第一種情況

List<Map<String,Object>> selectList(@Param("params") HashMap  params);

這種也是我們最常用的一種

不管參數(shù)是什么類型都可以省略,但是要寫上返回值類型(根據(jù)自己的情況)

<select id="selectList" resultType="java.util.HashMap">

取值時只需要在xml文件內用map中的鍵值來取數(shù)據(jù)

<if test="name != '' and name != null">
    AND name=#{name}
</if>
<if test="age != '' and age != null">
    AND age=#{age}
</if>

第二種情況

dao層聲明參數(shù)和返回值類型

IPage selectAll(IPage page,@Param("params") HashMap  params);
<select id="selectAll" resultType="java.util.HashMap">

一般我們在xxx.xml里面取map的值都是直接通過#{鍵}來取的

但是當傳入的參數(shù)不止一個時,取map里面的值就需要用參數(shù)去取

<if test="params.name != '' and params.name != null">
    AND name=#{params.name}
</if>
<if test="params.age != '' and params.age != null">
    AND age=#{params.age}
</if>

這個params就是dao層傳入的map類型的參數(shù)

直接通過鍵來取值無法取到值

mybatisPlus IPage分頁常見問題(坑)

觀前提示:

本文所使用的IDEA版本為ultimate 2019.1,JDK版本為1.8.0_141。

1.TooManyResultsException

最近在使用Mybatis-plus的IPage插件分頁時,出現(xiàn)了以下的莫名其妙的錯誤

Resolved [org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 6]

然后檢查我寫的Controller、Service、Mapper、Mapper.xml,結果還是一無所獲,以下是我的Mapper和Mapper.xml(大致內容一致)

Mapper

public interface ExampleMapper {
    IPage<EntityDto> selectEntityAndPage(@Param("param") Entity param, Page<Entity> page);
}

Mapper.xml的select部分

  <select id="selectEntityAndPage" parameterType="cn.com.example.enetity.Entity " resultType="cn.com.example.dto.EntityDto">
    select id, name from table
  </select>

百度了一下才發(fā)現(xiàn)了這個深坑

mybatis-plus 中page參數(shù)不在第一個位置,返回的結果集接收對象不被認為是一個集合,而放在第一位就沒有問題。

所以我改寫了Mapper參數(shù)的順序

IPage<EntityDto> selectEntityAndPage(Page<Entity> page, @Param("param") Entity param);

問題解決。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • java郵件收發(fā)功能實現(xiàn)代碼

    java郵件收發(fā)功能實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了java郵件收發(fā)功能實現(xiàn)代碼,具有一定的參考價值,感興趣的朋友可以參考一下
    2016-06-06
  • java.lang.UnsupportedClassVersionError異常正確解決方法

    java.lang.UnsupportedClassVersionError異常正確解決方法

    java.lang.UnsupportedClassVersionError異常通常發(fā)生在嘗試在較低版本的Java虛擬機上運行使用更高版本的Jav 編譯器編譯的類文件時,下面就來介紹一下解決方法,感興趣的可以了解一下
    2024-05-05
  • Mybatis把返回結果封裝成map類型的實現(xiàn)

    Mybatis把返回結果封裝成map類型的實現(xiàn)

    本文主要介紹了Mybatis把返回結果封裝成map類型的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • Spring Boot配置過濾器的2種方式示例

    Spring Boot配置過濾器的2種方式示例

    這篇文章主要給大家介紹了關于Spring Boot配置過濾器的2種方式,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Spring Boot具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-09-09
  • 詳解Spring如何解析占位符

    詳解Spring如何解析占位符

    Spring一直支持將屬性定義到外部的屬性的文件中,并使用占占位符的形式為使用"${}"包裝的屬性名稱,為了使用屬性占位符,我們必須配置一個PropertyPlaceholderConfigurer或PropertySourcesPlaceholderConfigurer實例,本文將介紹如何解析占位符
    2021-06-06
  • Java?中的?clone(?)?和?new哪個效率更高

    Java?中的?clone(?)?和?new哪個效率更高

    很多朋友不太清楚clone()和new那個更快?針對這個問題我百度了好多資料,最終小編總結下關于Java?中的?clone(?)?和?new哪個效率更高的問題,感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • IDEA切換JDK版本超詳細操作步驟記錄

    IDEA切換JDK版本超詳細操作步驟記錄

    在我們項目開發(fā)的過程中可能會遇到JDK版本過高或者過低導致一些程序無法啟動,不兼容的問題,所以我們需要切換JDK的版本號,這篇文章主要給大家介紹了關于IDEA切換JDK版本的超詳細操作步驟,需要的朋友可以參考下
    2024-03-03
  • mybatis-generator-gui根據(jù)需求改動示例

    mybatis-generator-gui根據(jù)需求改動示例

    這篇文章主要為大家介紹了mybatis-generator-gui根據(jù)需求改動示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • SpringBoot集成Druid連接池連接MySQL8.0.11

    SpringBoot集成Druid連接池連接MySQL8.0.11

    這篇博客簡單介紹spring boot集成druid連接池的簡單配置和注意事項,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2021-07-07
  • springboot結合websocket聊天室實現(xiàn)私聊+群聊

    springboot結合websocket聊天室實現(xiàn)私聊+群聊

    本文主要介紹了springboot結合websocket聊天室實現(xiàn)私聊+群聊,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07

最新評論