Mybatis-plus selectByMap條件查詢方式
selectByMap條件查詢
List<T> selectByMap(@Param("cm") Map<String, Object> columnMap);如上,可以看到BaseMapper中的selectByMap接口需要的參數(shù)是Map<String ,Object>,故
Map<String, Object> map=new HashMap<>();
map.put("列名1",約束1);//條件1
map.put("列名2",約束2);//條件2
xxxMapper.selectByMap(map);相當(dāng)于sql語句SELECT * FROM 表名 WHERE 列名1= ? AND 列名2= ?
selectMaps方法返回值字段為空不顯示問題
1.application.yaml設(shè)置mybayisPlus
沒加call-setters-on-nulls: true之前
mybatis-plus: mapper-locations: classpath*:/mapper/**Mapper.xml #實(shí)體掃描,多個package用逗號或者分號分隔 typeAliasesPackage: com.vkl.booking.persistence.entity configuration.cache-enabled: false global-config.db-config.db-type: mysql configuration.jdbc-type-for-null: null
調(diào)用mybatisPlus的selectMaps方法。好處:如果返回類型某個對象缺少字段,這里可以自定義要返回的字段。
public Message test(){
List<Map<String, Object>> mapList = cLibraryMapper.selectMaps(new LambdaQueryWrapper<CompanyBookingLibrary>());
for(Map<String,Object> map :mapList){
/*自定義添加自己想要的字段*/
map.put("test","1");
}
return Message.object(mapList);
}請求結(jié)果:

2.添加call-setters-on-nulls: true之后
mybatis-plus:
mapper-locations: classpath*:/mapper/**Mapper.xml
#實(shí)體掃描,多個package用逗號或者分號分隔
typeAliasesPackage: com.vkl.booking.persistence.entity
configuration.cache-enabled: false
global-config.db-config.db-type: mysql
configuration.jdbc-type-for-null: null
configuration:
call-setters-on-nulls: true返回結(jié)果:

為空的字段也返回出來了,大功告成!
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
在SpringBoot中使用UniHttp簡化天地圖路徑規(guī)劃調(diào)用實(shí)踐記錄(場景分析)
本文介紹了如何在SpringBoot項(xiàng)目中使用UniHttp簡化天地圖路徑規(guī)劃接口的調(diào)用,通過一個具體的例子展示了如何根據(jù)中文地址獲取經(jīng)緯度坐標(biāo),并使用UniHttp調(diào)用天地圖路徑規(guī)劃服務(wù),感興趣的朋友一起看看吧2025-02-02
Springboot項(xiàng)目的Mapper中增加一個新的sql語句
本文主要介紹了Springboot項(xiàng)目的Mapper中增加一個新的sql語句,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05
Java-Redis-Redisson分布式鎖的功能使用及實(shí)現(xiàn)
這篇文章主要介紹了Java-Redis-Redisson-分布式鎖的功能使用及實(shí)現(xiàn),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08
Java 線程池詳解及創(chuàng)建簡單實(shí)例
這篇文章主要介紹了Java 線程池詳解及創(chuàng)建簡單實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-02-02
Java編程實(shí)現(xiàn)獲取當(dāng)前代碼行行號的方法示例
這篇文章主要介紹了Java編程實(shí)現(xiàn)獲取當(dāng)前代碼行行號的方法,結(jié)合實(shí)例形式分析了java基于StackTraceElement對象實(shí)現(xiàn)獲取代碼行號的相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
Spring Boot支持Crontab任務(wù)改造的方法
這篇文章主要介紹了Spring Boot支持Crontab任務(wù)改造的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-01-01
IDEA中編寫并運(yùn)行shell腳本的實(shí)現(xiàn)
這篇文章主要介紹了IDEA中編寫并運(yùn)行shell腳本的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
RabbitMQ中的channel信道、exchange交換機(jī)和queue隊(duì)列詳解
這篇文章主要介紹了RabbitMQ中的channel信道、exchange交換機(jī)和queue隊(duì)列詳解,connection是指物理的連接,一個client與一個server之間有一個連接,一個連接上可以建立多個channel,可以理解為邏輯上的連接,需要的朋友可以參考下2023-08-08

