java:mybatisplus查询功能演示,包括模糊查询

以下是修改后的代码实现模糊查询功能:

实体类(PhoneInfo)保持不变:

import com.baomidou.mybatisplus.annotation.TableName;

import lombok.Data;

@Data

@TableName("phone_info")

public class PhoneInfo {

private String model;

private Integer groupId;

private String sn;

private String imei;

private String version;

}

Mapper 接口(继承 BaseMapper)保持不变:

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import org.springframework.stereotype.Repository;

@Repository

public interface PhoneInfoMapper extends BaseMapper<PhoneInfo> {

}

服务类(PhoneInfoService)修改如下:

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

import lombok.extern.slf4j.Slf4j;

import org.springframework.stereotype.Service;

import java.util.List;

@Service

@Slf4j

public class PhoneInfoService extends ServiceImpl<PhoneInfoMapper, PhoneInfo> {

public List<PhoneInfo> queryPhoneInfo(String model, List<Integer> groupIds, String sn, String imei, String version) {

QueryWrapper<PhoneInfo> queryWrapper = new QueryWrapper<>();

if (model!= null) {

queryWrapper.like("model", model);

}

if (groupIds!= null &&!groupIds.isEmpty()) {

queryWrapper.in("group_id", groupIds);

}

if (sn!= null) {

queryWrapper.like("sn", sn);

}

if (imei!= null) {

queryWrapper.like("imei", imei);

}

if (version!= null) {

queryWrapper.like("version", version);

}

return baseMapper.selectList(queryWrapper);

}

}

在上述代码中,使用queryWrapper.like()方法进行模糊查询。如果要进行更加复杂的模糊查询,可以使用queryWrapper.likeRight()(后缀模糊查询)或queryWrapper.likeLeft()(前缀模糊查询)等方法。

相关推荐
折哥的程序人生 · 物流技术专研23 分钟前
Java面试85题图解版(一):基础核心篇
java·开发语言·后端·面试
AllData公司负责人39 分钟前
通过Postgresql同步到Doris,全视角演示AllData数据中台核心功能效果,涵盖:数据入湖仓,数据同步,数据处理,数据服务,BI可视化驾驶舱
java·大数据·数据库·数据仓库·人工智能·python·postgresql
Hello.Reader1 小时前
算法基础(十)——分治思想把大问题拆成小问题
java·开发语言·算法
一只大袋鼠1 小时前
JavaWeb四种文件上传方式(下篇)
java·开发语言·springmvc·javaweb
TE-茶叶蛋2 小时前
深入研究 yudao-framework 模块:Java 编程能力提升指南
java·开发语言
逻辑驱动的ken2 小时前
Java高频考点场景题24
java·开发语言·面试·职场和发展·求职招聘
兔小盈2 小时前
多线程-(五)线程安全之内存可见性
java·开发语言·多线程
CeshirenTester2 小时前
LangChain的工具调用 vs 原生Skill API:性能差在哪儿?
java·人工智能·langchain
yaoxin5211232 小时前
400. Java 文件操作基础 - 使用 Buffered Stream I/O 读取文本文件
java·开发语言·python
Fox爱分享3 小时前
字节二面:10亿数据毫秒级查手机尾号后4位,答不出“异构索引”直接挂?
java·后端·面试