实现Mybatis-Plus联表查询
第一步:maven导入所需依赖包
<dependency><groupId>com.github.yulichang</groupId><artifactId>mybatis-plus-join</artifactId><version>1.2.4</version>
</dependency>
第二步:Mapper接口继承父类MPJBaseMapper<T>
@Mapper
public interface CemPsiUseMapper extends MPJBaseMapper<CemPsiUse> {}
第三步:注入Mapper接口
@Autowiredprivate CemPsiUseMapper cemPsiUseMapper;
第四步:实例化条件构造器并可自定义设置搜索条件
MPJQueryWrapper<CemPsiUse> cemPsiUseMPJQueryWrapper = new MPJQueryWrapper<>();cemPsiUseMPJQueryWrapper.selectAll(CemPsiUse.class);cemPsiUseMPJQueryWrapper.select("t1.maintain_name");cemPsiUseMPJQueryWrapper.leftJoin("cem_place_maintains t1 on t.maintian_id = t1.id");if(articleName!=null&& !articleName.equals("")){cemPsiUseMPJQueryWrapper.like("t.article_name",articleName);}
selectAll()方法为查询主表所有的字段,默认表别名为t
select()为查询其他表指定的字段,t1为表别名,select策略为追加,可以查询多个表数据, 一个select方法只能查询一个表的数据
leftjoin()方法为左连接
第五步:使用自动注入的Mapper接口方法进行查询或分页查询(这里使用分页)
Page<CemPsiUseParamVo> page = new Page<>(pageNo, pageSize);IPage<CemPsiUseParamVo> pageList = cemPsiUseMapper.selectJoinPage(page,CemPsiUseParamVo.class, cemPsiUseMPJQueryWrapper);
CemPsiUseParamVo为最终查询结果映射实体类,因为是多表查询,所以某一个表的映射实体类不能包含所有字段
第六步:设置映射实体类
这一步即为将所需所有字段总结在一个实体类里。
实现Mybatis-Plus联表查询相关推荐
- MyBatis Plus 联表查询
官方文档:https://gitee.com/best_handsome/mybatis-plus-join/ 背景 mybatis-plus 作为 mybatis 的增强工具,它的出现极大的简化了开 ...
- mybatis一对一联表查询的两种常见方式
1.一条语句执行查询(代码如下图) 注释:class表(c别名),teacher表(t别名)teacher_id为class表的字段t_id为teacher表的字段,因为两者有主键关联的原因,c_i ...
- Mybatis(第二篇:联表查询)
Mybatis(第二篇:联表查询) 目录 Mybatis(第二篇:联表查询) 一.前期 项目的搭建 1.数据库 2.IDEA项目架构搭建 2.1 pom.xml 2.2 domain包 2.2.1 D ...
- mybatis联表查询且统计数据
mybatis联表查询且统计数据 表1的数据+表2的数据的统计==>vo接收 前端原型图如下: 涉及到两张表 t_record t_user_record 详情A/B A:未签收人数 B:全部人 ...
- Springboot中使用Mybatis框架对数据库进行联表查询,踩坑填坑
因为mybatis使用的基本是原生sql语句 所以首先从数据库开始说 以mysql数据库为例,对表的连接查询分为四种 内连接,外连接,交叉连接,和联合连接 内连接使用比较运算符根据每个表共有的列的值匹 ...
- Spring Hibernate JPA 联表查询 复杂查询
(转自:http://www.cnblogs.com/jiangxiaoyaoblog/p/5635152.html) 今天刷网,才发现: 1)如果想用hibernate注解,是不是一定会用到jpa的 ...
- Mybatis系列(三):Mybatis实现关联表查询
原文链接:http://www.cnblogs.com/xdp-gacl/p/4264440.html 一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 ...
- Mybatis 实现关联表查询
一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关 ...
- MyBatis 实现关联表查询
一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关 ...
- 动态SQL 模糊查询 联表查询
1. 正文 1. set标签 和 foreach标签 trim标签 sql片段 2. mybatis映射文件处理特殊字符. 3. mybatis完成模糊查询. 4. 联表查询 2. 动态sql 2.1 ...
最新文章
- 福利 | 一文读懂系列文章精选集发布啦!
- JavaWeb总结(九)
- arm linux 核心板 制作,Linux下制作给ARM开发板使用的文件系统
- OpenGL cubemap 立方体贴图实例
- python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决
- android拦截短信获取短信内容,《英雄联盟手游》先锋测试招募说明:仅安卓用户...
- 性能优化CPU、内存、磁盘I/O、网络性能相关命令
- 压力测试http_load 通过修改配置测试https协议成功了。
- vs 常见问题汇总
- wget 和 curl 区别
- 执行文件mysql使用source 命令乱码问题
- java火箭应用_从火箭发场景来学习Java多线程并发闭锁对象
- 计算机做镜像步骤,如何将当前的操作系统做成镜像?
- QT保留小数点后几位
- QEMU学习笔记——QOM(Qemu Object Model)
- 数字电子技术基础(一):进制转换
- 想学python网课哪个好-推荐书单(网课)-人生/编程/Python/机器学习-191本
- 原生JS实现中文简繁切换,引入即可整站变繁体
- node.js+社区儿童预防接种管理 毕业设计-附源码300924
- ubuntu 如何放大终端窗口字体
热门文章
- 专科就业工资php,专科工资高的十大专业 大专学什么专业就业前景好
- 价值营销:让中高端品牌成为信仰
- [C语言]猴子吃桃问题 猴子第一天摘下若干个桃子,每天都吃了前一天剩下的一半零一个,到第10天早上想再吃的时候,就剩下一个桃子. 求第一天共摘多少个桃子?
- 微星笔记本怎么装linux,wine安装msi文件
- SQL DEFAULT 约束
- UserWarning: Workbook contains no default style, apply openpyxl‘s default warn no default style 解决方案
- jquery easyui datagrid view detailview 使用
- Bugku CTF Web 网站被黑
- JavaScript(3)-- 数据类型
- 爱奇艺CDN运维平台实践