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()(前缀模糊查询)等方法。

相关推荐
NiceCloud喜云6 小时前
Anthropic 一周三连发:Cowork 多端、Fable 5 按需付费、J-space 论文的技术解读
java·服务器·网络·人工智能·ai
SamDeepThinking6 小时前
组合还是继承?我在项目里主要看这两个判断
java·后端·面试
momo6 小时前
JAVA基础知识
java·开发语言
就叫_这个吧7 小时前
Activiti7工作流入门+案例应用
java·activiti7·工作流
Z_W_H_7 小时前
minikube start --driver=docker --memory=4000mb出现PROVIDER_DOCKER_NEWGRP
java·docker·minikube
折哥的程序人生 · 物流技术专研7 小时前
第3篇:手写促销策略引擎(满减、打折、立减)
java·设计模式·策略模式·开闭原则·编程实战·扩充系列·促销引擎
郑州光合科技余经理8 小时前
海外外卖平台源码改造实战——多语言核心代码实现
java·开发语言·前端·后端·mysql·架构·php
耀耀_很无聊8 小时前
12_Redis Lua 脚本踩坑:为什么 tonumber(ARGV[x]) 会得到 nil?
java·redis·lua
奶油话梅糖8 小时前
锐捷常用命令速查表
java·网络·windows
code_std8 小时前
java WebSocket 使用
java·开发语言·websocket