Mybatis-Plus中的selectByMap使用實(shí)例
前言:
我在開(kāi)始用Mybatis-Plus來(lái)對(duì)數(shù)據(jù)庫(kù)進(jìn)行增刪改查時(shí),將里面的函數(shù)試了個(gè)遍,接下來(lái)我就將使用selectByMap函數(shù)的簡(jiǎn)單測(cè)試實(shí)例寫出來(lái),方便沒(méi)有使用過(guò)的朋友們快速上手
正文:
首先我們要使用這個(gè)selectByMap函數(shù),需要在我們的Mapper中繼承mybatis-plus包中相應(yīng)的接口
package com.example.library.Mapper;
import com.example.library.entity.bookBorrowing;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface borrowMapper extends BaseMapper<bookBorrowing>{
}
其中BaseMapper中接口就有該函數(shù):
// IntelliJ API Decompiler stub source generated from a class file
// Implementation of methods is not available
package com.baomidou.mybatisplus.core.mapper;
public interface BaseMapper <T> extends com.baomidou.mybatisplus.core.mapper.Mapper<T> {
int insert(T entity);
int deleteById(java.io.Serializable id);
int deleteByMap(@org.apache.ibatis.annotations.Param("cm") java.util.Map<java.lang.String,java.lang.Object> columnMap);
int delete(@org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper);
int deleteBatchIds(@org.apache.ibatis.annotations.Param("coll") java.util.Collection<? extends java.io.Serializable> idList);
int updateById(@org.apache.ibatis.annotations.Param("et") T entity);
int update(@org.apache.ibatis.annotations.Param("et") T entity, @org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> updateWrapper);
T selectById(java.io.Serializable id);
java.util.List<T> selectBatchIds(@org.apache.ibatis.annotations.Param("coll") java.util.Collection<? extends java.io.Serializable> idList);
java.util.List<T> selectByMap(@org.apache.ibatis.annotations.Param("cm") java.util.Map<java.lang.String,java.lang.Object> columnMap);
T selectOne(@org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper);
java.lang.Integer selectCount(@org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper);
java.util.List<T> selectList(@org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper);
java.util.List<java.util.Map<java.lang.String,java.lang.Object>> selectMaps(@org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper);
java.util.List<java.lang.Object> selectObjs(@org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper);
<E extends com.baomidou.mybatisplus.core.metadata.IPage<T>> E selectPage(E page, @org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper);
<E extends com.baomidou.mybatisplus.core.metadata.IPage<java.util.Map<java.lang.String,java.lang.Object>>> E selectMapsPage(E page, @org.apache.ibatis.annotations.Param("ew") com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper);
}
其中的selectByMap調(diào)用的就是其中的函數(shù)。
接下來(lái)就是調(diào)用的方法:
package com.example.library;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import com.example.library.Mapper.*;
import com.example.library.entity.*;
import org.mybatis.spring.annotation.MapperScan;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@MapperScan("com/example/library/Mapper")
@SpringBootTest
class LibraryApplicationTests {
@Autowired
private borrowMapper borrowMapper;
@Test
public void mapSelect(){
Map<String,Object> map = new HashMap<String, Object>();
map.put("student_code","123456");
List<bookBorrowing> stu = borrowMapper.selectByMap(map);
for(bookBorrowing s:stu){
System.out.println(s);
}
}
}
@Test注解是表示這是一個(gè)測(cè)試類,可以單獨(dú)拎出來(lái)測(cè)試。
這條語(yǔ)句是,將查到的student_code為123456的那一行信息拿出來(lái)并打印在控制臺(tái)上。
這是數(shù)據(jù)庫(kù)中的相關(guān)信息:

這是運(yùn)行的結(jié)果:

這就是selectByMap函數(shù)最簡(jiǎn)單基礎(chǔ)的用法,如果有什么寫得不對(duì)或者不夠充分的地方還請(qǐng)各位大佬指正補(bǔ)充,我也好跟著一起學(xué)習(xí)~~
到此這篇關(guān)于Mybatis-Plus中的selectByMap使用實(shí)例的文章就介紹到這了,更多相關(guān)Mybatis-Plus selectByMap內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)戰(zhàn)房屋租賃網(wǎng)的實(shí)現(xiàn)流程
讀萬(wàn)卷書不如行萬(wàn)里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+SSM+jsp+mysql+maven實(shí)現(xiàn)一個(gè)房屋租賃網(wǎng)站,大家可以在過(guò)程中查缺補(bǔ)漏,提升水平2021-11-11
Java布隆過(guò)濾器的應(yīng)用實(shí)例
這篇文章主要介紹了Java布隆過(guò)濾器的應(yīng)用實(shí)例,在程序的世界中,布隆過(guò)濾器是程序員的一把利器,利用它可以快速地解決項(xiàng)目中一些比較棘手的問(wèn)題,如網(wǎng)頁(yè)?URL?去重、垃圾郵件識(shí)別、大集合中重復(fù)元素的判斷和緩存穿透等問(wèn)題,需要的朋友可以參考下2023-11-11
Netty的Handler鏈調(diào)用機(jī)制及如何組織詳解
這篇文章主要為大家介紹了Netty的Handler鏈調(diào)用機(jī)制及如何組織示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Java中高效的判斷數(shù)組中某個(gè)元素是否存在詳解
相信大家在操作Java的時(shí)候,經(jīng)常會(huì)要檢查一個(gè)數(shù)組(無(wú)序)是否包含一個(gè)特定的值?這是一個(gè)在Java中經(jīng)常用到的并且非常有用的操作。同時(shí),這個(gè)問(wèn)題在Stack Overflow中也是一個(gè)非常熱門的問(wèn)題。本文將分析幾種常見(jiàn)用法及其時(shí)間成本,有需要的朋友們可以參考借鑒。2016-11-11
解決idea中debug工具欄消失后如何顯示的問(wèn)題
這篇文章主要介紹了解決idea中debug工具欄消失后如何顯示的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02
基于斷點(diǎn)續(xù)傳下載原理的實(shí)現(xiàn)
下面小編就為大家?guī)?lái)一篇基于斷點(diǎn)續(xù)傳下載原理的實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
springboot中validator數(shù)據(jù)校驗(yàn)功能的實(shí)現(xiàn)
這篇文章主要介紹了springboot中validator數(shù)據(jù)校驗(yàn)功能,校驗(yàn)分為普通校驗(yàn)和分組校驗(yàn),每種校驗(yàn)方式通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-10-10

