欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MyBatisPlus 查詢selectOne方法實現

 更新時間:2023年01月11日 15:58:47   作者:波波101  
本文主要介紹了MyBatisPlus 查詢selectOne方法實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一次偶然間遇到的一個問題,MyBatisPlus 自帶selectOne代碼中查詢出來了一條數據,但是在數據庫中查出來了多條數據,而代碼中也沒有報錯!好奇之下看了源碼才恍然大悟。

public SysFileTemplate findPathByTableName(String tableName) {
        EntityWrapper<SysFileTemplate> wrapper = new EntityWrapper<>();
        wrapper.eq("table_name", tableName);
        wrapper.ne("status", BizCode.Status.DELETE);
        SysFileTemplate selectOne = selectOne(wrapper);
        return selectOne;
    }

以下是mybatisPlus的源碼,可以看出selectOne方法也是調用了selectList方法。在看getObject方法,如果selectList方法獲取的值大于1時,只是發(fā)出一個警告消息 Warn: execute Method There are 2 results.,之后取第一條消息返回去,所以selectOne方法得到的就是一條消息(null值除外)

@Override
public T selectOne(Wrapper<T> wrapper) {
? ? return SqlHelper.getObject(baseMapper.selectList(wrapper));
}


?/**
? ? ?* <p>
? ? ?* 從list中取第一條數據返回對應List中泛型的單個結果
? ? ?* </p>
? ? ?*
? ? ?* @param list
? ? ?* @param <E>
? ? ?* @return
? ? ?*/
? ? public static <E> E getObject(List<E> list) {
? ? ? ? if (CollectionUtils.isNotEmpty(list)) {
? ? ? ? ? ? int size = list.size();
? ? ? ? ? ? if (size > 1) {
? ? ? ? ? ? ? ? logger.warn(String.format("Warn: execute Method There are ?%s results.", size));
? ? ? ? ? ? }
? ? ? ? ? ? return list.get(0);
? ? ? ? }
? ? ? ? return null;
? ? }

特別注意:

1、如果需要將selectOne的返回值傳遞進行操作的話,必須考慮可能的返回null的情況,否則程序就會異常。

到此這篇關于MyBatisPlus 查詢selectOne方法實現的文章就介紹到這了,更多相關MyBatisPlus selectOne內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java中filter用法完整代碼示例

    Java中filter用法完整代碼示例

    這篇文章主要介紹了Java中filter用法完整代碼示例,分享了瀏覽器不緩存頁面的過濾器,檢測用戶是否登陸的過濾器等相關實例,小編覺得還是挺不錯的,這里分享給大家,需要的朋友可以參考下
    2018-01-01
  • 一文帶你了解Java選擇排序的原理與實現

    一文帶你了解Java選擇排序的原理與實現

    選擇排序:(Selection sort)是一種簡單直觀的排序算法,也是一種不穩(wěn)定的排序方法。本文主要為大家介紹一下選擇排序的原理與實現,希望對大家有所幫助
    2022-11-11
  • 解決IDEA誤刪out目錄下的文件導致404無法訪問的問題

    解決IDEA誤刪out目錄下的文件導致404無法訪問的問題

    這篇文章主要介紹了解決IDEA誤刪out目錄下的文件導致404無法訪問的情況,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • MyBatis?核心組件Configuration實例詳解

    MyBatis?核心組件Configuration實例詳解

    Configuration用于描述 MyBatis 的主配置信息,其他組件需要獲取配置信息時,直接通過 Configuration 對象獲取,這篇文章主要介紹了MyBatis核心組件Configuration,需要的朋友可以參考下
    2023-08-08
  • java簡單快速排序實例解析

    java簡單快速排序實例解析

    這篇文章主要為大家詳細介紹了java簡單快速排序實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • SpringBoot整合JavaMail郵件的兩種方式

    SpringBoot整合JavaMail郵件的兩種方式

    這篇文章主要介紹了SpringBoot整合JavaMail郵件的兩種方式,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • 詳解Java LinkedHashMap與HashMap的使用

    詳解Java LinkedHashMap與HashMap的使用

    這篇文章主要通過幾個示例為大家詳細介紹了Java中LinkedHashMap與HashMap的常見使用和概述,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2022-10-10
  • 詳解SpringMVC中的異常處理機制

    詳解SpringMVC中的異常處理機制

    本篇文章將為大家詳細介紹一下springmvc的異常處理機制,用到了ControllerAdvice和ExceptionHandler注解,感興趣的小伙伴可以了解一下
    2022-07-07
  • Java工程編碼格式由GBK轉化成utf-8的具體實現

    Java工程編碼格式由GBK轉化成utf-8的具體實現

    在寫項目的過程中我發(fā)現有的地方編碼格式被設置成了 gbk 如果用eclipse等工具直接改回utf-8編碼格式則會出現亂碼,所以本文給大家介紹了Java工程編碼格式由GBK轉化成utf-8的具體實現,感興趣的朋友可以參考下
    2024-05-05
  • IntelliJ IDEA中Project與Module的概念以及區(qū)別

    IntelliJ IDEA中Project與Module的概念以及區(qū)別

    這篇文章主要給大家介紹了關于IntelliJ IDEA中Project與Module的概念以及區(qū)別的相關資料,文中通過實例介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01

最新評論