MyBatis-Plus如何实现普通查询
发表于:2024-09-30 作者:千家信息网编辑
千家信息网最后更新 2024年09月30日,这篇文章主要介绍了MyBatis-Plus如何实现普通查询,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、创建User表User 表
千家信息网最后更新 2024年09月30日MyBatis-Plus如何实现普通查询
这篇文章主要介绍了MyBatis-Plus如何实现普通查询,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
一、创建User表
User
表结构如下:
id | name | age | |
---|---|---|---|
1 | Jone | 18 | test1@baomidou.com |
2 | Jack | 20 | test2@baomidou.com |
3 | Tom | 28 | test3@baomidou.com |
4 | Sandy | 21 | test4@baomidou.com |
5 | Billie | 24 | test5@baomidou.com |
其对应的数据库 Schema 脚本如下:
DROP TABLE IF EXISTS user;
CREATE TABLE user
(
id BIGINT(20) NOT NULL COMMENT '主键ID',
name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
age INT(11) NULL DEFAULT NULL COMMENT '年龄',
email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY (id)
);
其对应的数据库 Data 脚本如下:
DELETE FROM user;
INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');
回到顶部
二、创建基础类
2.1 User 类
1 package com.example.demo.entity;
2
3 import lombok.Data;
4
5 @Data
6 public class User {
7 private Long id;
8 private String name;
9 private Integer age;
10 private String email;
11 }
2.2 创建UserMapper接口,继承 MyBatis Plus BaseMapper接口
1 package com.example.demo.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.example.demo.entity.User;
5
6 public interface UserMapper extends BaseMapper {
7 }
回到顶部
三、查询方法
3.1 单表查询所有记录 selectList
1 /*
2 * 描述:单表查询所有记录
3 * 作者:博客园-悟空聊架构
4 * 时间:2019-01-16
5 * Github:https://github.com/Jackson0714/study-mybatis-plus.git
6 * 博客园:https://www.cnblogs.com/jackson0714
7 * */
8 @Test
9 public void testSelect() {
10 System.out.println(("----- 单表查询所有记录------"));
11 List userList = userMapper.selectList(null);
12 Assert.assertEquals(6, userList.size()); //表里面的记录总条数是否等于6,如果等于6,则测试通过
13 userList.forEach(System.out::println);
14 }
userMapper.selectList(null);
对应的SQL语句是:
SELECT id,name,age,email FROM user
如果找不到这些日志,可以清理日志后,再执行一遍看下。
数据库有6条记录
查询出总条数6条,测试通过
3.2 单表根据主键id查询单条记录 selectById
1 /*
2 * 描述:单表根据主键id查询单条记录
3 * 作者:博客园-悟空聊架构
4 * 时间:2019-01-16
5 * Github:https://github.com/Jackson0714/study-mybatis-plus.git
6 * 博客园:https://www.cnblogs.com/jackson0714
7 * */
8 @Test
9 public void testSelectById() {
10 System.out.println(("----- 单表根据主键id查询单条记录 ------"));
11 User user = userMapper.selectById(2);
12 System.out.println(user);
13 }
1 userMapper.selectById(2)
2 对应的SQL语句为
3 SELECT id,name,age,email FROM user WHERE id=?
数据库中有一条记录
3.3 单表根据 id list 批量查询 selectBatchIds
1 /*
2 * 描述:单表根据 id list 批量查询
3 * 作者:博客园-悟空聊架构
4 * 时间:2019-01-16
5 * Github:https://github.com/Jackson0714/study-mybatis-plus.git
6 * 博客园:https://www.cnblogs.com/jackson0714
7 * */
8 @Test
9 public void testSelectByIds() {
10 System.out.println(("----- 单表根据 id list 批量查询 ------"));
11 List idsList = Arrays.asList(2L,4L,6L);
12 List userList= userMapper.selectBatchIds(idsList);
13 userList.forEach(System.out::println);
14 }
1 2 3 |
|
查询结果,id=2,id=4 的查询出来了,没有 id=6 的记录
3.4 单表根据条件查询 selectByMap
1 /*
2 * 描述:单表根据条件查询
3 * 作者:博客园-悟空聊架构
4 * 时间:2019-01-19
5 * Github:https://github.com/Jackson0714/study-mybatis-plus.git
6 * 博客园:https://www.cnblogs.com/jackson0714
7 * */
8 @Test
9 public void testSelectByMap() {
10 System.out.println(("----- 单表根据条件查询 ------"));
11 Map conditions = new HashMap<>();
12 conditions.put("name", "Jack");
13 conditions.put("age", 20);
14 List userList= userMapper.selectByMap(conditions);
15 userList.forEach(System.out::println);
16 }
userMapper.selectByMap(conditions);
对应的SQL语句为
SELECT id,name,age,email FROM user WHERE name = ? AND age = ?
数据库有一条记录,name="Jack",age=20
注意:使用slectByMap时,条件里面的字段名需要和数据库保持一致。
不然会出现以下错误:
感谢你能够认真阅读完这篇文章,希望小编分享的"MyBatis-Plus如何实现普通查询"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
查询
博客
数据
数据库
作者
时间
条件
架构
篇文章
语句
悟空
普通
接口
日志
脚本
顶部
测试
一致
价值
兴趣
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
加大青少年网络安全教育
训练场怎么换服务器
mysql 数据库端口连接
软件开发如何提高员工质量意识
图书借阅数据库视图与索引
将军网络技术有限公司
国家网络安全的部门
形式化软件开发方法
属于WEB服务器的安全措
软件开发未来学习计划
提交前后对数据库的影响
显示数据库表内容
计算机应用技术数据库实验报告
河南调度服务器挂式云主机
易探云服务器淘宝挂千牛怎么使用
网络安全基础书单
网络技术mbi是什么意思
中国网络总服务器
安卓移动软件开发计算器
专科生自学软件开发
计算机服务器的配置是什么
辽宁大型软件开发诚信经营
计算机网络技术的发展及展望
节点 服务器 集群区别
移动学习软件开发工具
creator数据库
数据库应用技术第二版第一章重点
所有新建数据库表在哪里看
达梦查看数据库字符集
为什么进游戏总是断开服务器