当前位置: 首页 > news >正文

MyBatis-Plus 的条件查询

MyBatis-Plus 的条件查询

实验目的

1.掌握 MyBatis-Plus 条件构造器(Wrapper) 的使用方法。

2.理解条件查询的基本原理。

3.掌握常见条件查询操作:等值查询,模糊查询,范围查询

4.能够使用 MyBatis-Plus 完成复杂查询操作。

实验环境

开发工具:IntelliJ IDEA

构建工具:Maven

测试工具:Postman或浏览器

AI工具:通义灵码

实验要求

在校园二手交易系统 中实现以下查询功能:

1.按商品名称查询

2.按价格区间查询商品

3.按发布人查询商品

4.模糊查询商品名称

实验内容

第一部分:准备数据库数据

向 goods 表插入测试数据:

INSERT INTO goods(title,description,price,seller)
VALUES
('二手自行车','九成新山地车',300,'张三'),
('Java编程书','Java基础教材',50,'李四'),
('笔记本电脑','轻薄办公本',2500,'王五'),
('台灯','学习台灯',30,'张三');

第二部分:编写条件查询接口

  1. 等值查询(eq)

根据发布人查询商品。

在 Controller 中编写接口:

@GetMapping("/seller/{seller}")
public List<Goods> getBySeller(@PathVariable String seller){

QueryWrapper<Goods> wrapper = new QueryWrapper<>();
wrapper.eq("seller", seller);

return goodsMapper.selectList(wrapper);
}

访问接口:

http://localhost:8080/goods/seller/张三

SQL效果:

SELECT * FROM goods WHERE seller='张三';

  1. 模糊查询(like)

根据商品名称模糊查询。

@GetMapping("/search")
public List<Goods> search(String title){

QueryWrapper<Goods> wrapper = new QueryWrapper<>();
wrapper.like("title", title);

return goodsMapper.selectList(wrapper);
}

访问:

http://localhost:8080/goods/search?title=书

SQL效果:

SELECT * FROM goods WHERE title LIKE '%书%';

  1. 范围查询(between)

查询价格区间商品。

@GetMapping("/price")
public List<Goods> getByPrice(Double min, Double max){

QueryWrapper<Goods> wrapper = new QueryWrapper<>();
wrapper.between("price", min, max);

return goodsMapper.selectList(wrapper);
}

访问:

http://localhost:8080/goods/price?min=50&max=500

SQL效果:

SELECT * FROM goods WHERE price BETWEEN 50 AND 500;

  1. Lambda 条件查询(推荐)

Lambda 写法更加安全:

@GetMapping("/lambda")
public List<Goods> lambdaQuery(String seller){

LambdaQueryWrapper<Goods> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(Goods::getSeller, seller);

return goodsMapper.selectList(wrapper);
}

优点:

防止字段写错

支持自动重构

代码更安全

第三部分:测试功能

  1. 等值查询

2.模糊查询

3.范围查询

4.Lambda条件查询

http://www.jsqmd.com/news/1392204/

相关文章:

  • 2026年沈阳GEO优化公司推荐:两家靠谱公司深度测评 - 优企甄选
  • Agent 为什么总是“失忆”?一套生产级长期记忆系统,远不止向量数据库
  • 英伟达笔试1
  • 开火锅店最重要的一点是什么?
  • ahk2_lib 实战指南:3 步把 AutoHotkey V2 脚本升级成专业桌面工具
  • 2026最新 PanDownload 网页解析版:免安装客户端,百度网盘直链提取不限速
  • 艾灸按摩职业培训选哪所学校?湖北李时珍国医培训学校保健艾灸专业报名指南 - 武汉中职最新信息发布
  • 海水能送一千五百公里,北极能让信号整天消失
  • 跨平台 Git 可视化工具 SourceGit 实操指南:从个人装机到团队协作全流程
  • dockercompose离线安装
  • G-Helper终极指南:用10MB轻量替代工具接管华硕笔记本性能
  • 【第13课 AMD锐龙CPU标准时序
  • ComfyUI 中文工作流合集实操指南:50 个预设模板,让新手半天出第一张图
  • 基于springboot学生社团管理系统的设计与实现
  • Python转义字符
  • 免费开源Windows风扇控制软件FanControl完整上手攻略:风扇噪音一次搞定
  • 设计 Token 评审:语义颜色不能退化成色阶编号
  • AnyDesk ID一键重置完整指南:3分钟生成全新ID,告别泄露与连接冲突
  • 2026年品牌战略咨询机构权威推荐:不同发展阶段的品牌,该如何匹配战略咨询伙伴?
  • 揭秘企业网站建设市场前景与数字化转型必由之路的深度洞察
  • 卧床患者怎么转运到外地?昆明重症跨省长途转运方案详解 - 滚动商讯
  • 苏州铝外壳生产厂家选择哪家?能配合结构优化降本的是优选 - 品牌2026
  • 2024最新解析:杭州的网站建设公司哪家好?避开这些坑,让你的官网颜值与转化双飞跃
  • 兰州汽车隔音降噪去哪里?凡音汽车音响施工参考 - 爱听歌的小星星
  • 当缠论分析从“手工画线“变成“自动计算“:通达信缠论插件 ChanlunX 使用全记录
  • 如何3分钟算准Buck-Boost电感值?这款免费开源电感计算器来帮忙
  • 开源项目管理软件 OpenProject 使用教程:5 个关键问题一次讲透
  • 2026 成都微胖男士定制指南:穿出松弛感 - 西装爱好者
  • 如何用sys-con让Xbox与PlayStation手柄在Switch上即插即玩?第三方USB手柄终极指南
  • 一个样品,一次合作:知医邦泡泡米是如何丰富企业大健康产品开发新原料需求的