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

相关推荐
Moshow郑锴16 小时前
sql-pipeline - 基于PostgreSQL的SQL健康检查与发布编排平台
java·sql
Wang's Blog1 天前
Java 项目实战: 外卖平台优化-Nginx配置文件结构与块层级
java·开发语言·nginx
\光辉岁月/1 天前
5.java-数组
java·开发语言
谢亮_vipxieliang1 天前
Spring 事务失效的常见场景
java·开发语言·数据库·spring boot
郑州光合科技余经理1 天前
海外版外卖加盟:总站与分站配送规则怎么分开管
java·开发语言·前端·后端·uni-app·php·ai编程
2601_962071571 天前
类变量和全局变量的生命周期有什么区别?
java·开发语言·jvm
code2cat1 天前
Java进阶篇之AtomicReference:一次替换引用,读到一份完整状态
java·并发编程·不可变对象·atomicreference
专业程序开发源1 天前
springboot简历管理系统81389-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计
Wang's Blog1 天前
Java 项目实战: 外卖平台优化-前后端分离开发模式与工程拆分
java·开发语言
HEJOO91 天前
指针的算术运算详解
java·数据结构·算法