MyBatis-Plus 多表联查+分页
在写东西的过程中,多表联查和分页功能必不可少。当然,crud也很重要
但是又不想写代码和xml。
通过苦苦的查找。发现MyBatis-Plus一款国产的框架。优化了许多操作
本次主要记录一下,多表联查和分页的使用。
Pom.xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.7.1</version>
</dependency>
//Spring boot方式
@EnableTransactionManagement
@Configuration
@MapperScan("com.baomidou.cloud.service.*.mapper*")
public class MybatisPlusConfig { /**
* 分页插件
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
}
操作完以上步骤(实体 mapper controller 等已建好)
@ResponseBody
@GetMapping("/artList")
public Map<String,Object>articleList(int page,int limit,Article article){
Page<Article> pageArt=new Page<Article>(page,limit);
Page<Article> page1 = articleMapper.findAllAndPage(pageArt); //自定义方法,多表
// QueryWrapper<Article> diseaseQueryWrapperw = new QueryWrapper<Article>(article);
// IPage<Article> page1 = articleService.page(pageArt,diseaseQueryWrapperw); //自带的分页查询。只能单表
// List<Article> list = articleService.list();
int total = (int)page1.getTotal();
return TableMap.ResultJson(0,total,"ok",page1.getRecords()); //layui table 解析返回格式
}
mapper Xml
<select id="findAllAndPage" resultType="com.chaoba.shirodemo1.model.Article"> SELECT a.id,a.title,a.uid,a.isDel,a.createTime,a.type,ae.`name` FROM article a JOIN article_enum ae ON a.type=ae.id </select>
mapper接口
public interface ArticleMapper extends BaseMapper<Article> {
Page<Article> findAllAndPage( Page<Article> page);
}
MyBatis-Plus 多表联查+分页的更多相关文章
- Mybatis中多表联查,查询出来的字段出现重名,造成数据异常的解决方法!
在做一对多出现的问题,引发的思考:当数据库表中,主表的主键id和明细表的中的字段名相同时怎么办?Mybatis进行自动映射赋值的时候会不会出现异常? 注意:M ...
- mybatis.net 多表联查
mybatis.net针对多表联查,其实不用讲联查出的所有的列全部做一个新的resultMap,我们完全可以通过集成关系来实现,真是上一次说的懒加载,在一定程度上可以提高其性能,但这并不是说懒加载性能 ...
- Mybatis-Plus 多表联查分页
原文:https://www.jianshu.com/p/759b6430ed5b 分析 使用的工程,依旧是 spring-boot,关于分页,官网给出了一个单表的 demo,其实多表分页实现原理相同 ...
- 使用Mybatis进行多表联查操作
(1)增加一个测试数据库shop_order,sql语句如下: CREATE DATABASE `shop_order`; USE `shop_order`; CREATE TABLE `t_user ...
- mybatis的多表联查
多对一连表查询简单记录
- sqlserver多表联查分页
select * from(select H_order.Id ,H_order.userID, ROW_NUMBER() over (order by H_order.Id Desc) as row ...
- 使用mybatis多表联查的时候结果异常及springmvc的理解
今天使用mybatis多表联查的时候,在dos窗口查询时可以出结果集,但是使用mybatis查询的时候最后返回的结果只有最后一个结果 然后研究了半天没弄出来,后来无意中发现添加了最外层从表的ID字段后 ...
- Mybatis oracle多表联合查询分页数据重复的问题
Mybatis oracle多表联合查询分页数据重复的问题 多表联合查询分页获取数据时出现一个诡异的现象:数据总条数正确,但有些记录多了,有些记录却又少了甚至没了.针对这个问题找了好久,最后发现是由于 ...
- SQLServer多表联查,多表分页查询
多表联查: select p.*,s.Sheng , i.Shifrom [dbo].[ProductRecordInfo] --表名 p left join [ShengInfo] s on ...
随机推荐
- 学习工具--Git
前言 主要内容来源于廖雪峰网站,内容通俗易懂,有些地方用了Gif来演示,实用性超强.至于git的强大,就不强调很多了,熟练掌握它最好的还是在实际工程中,先做一个简单的总结吧. git简介 Git是目前 ...
- 区块链学习1:Merkle树(默克尔树)和Merkle根
☞ ░ 前往老猿Python博文目录 ░ 一.简介 默克尔树(Merkle tree,MT)又翻译为梅克尔树,是一种哈希二叉树,树的根就是Merkle根. 关于Merkle树老猿推荐大家阅读<M ...
- PyQt(Python+Qt)学习随笔:QListWidget的访问当前项的currentItem和setCurrentItem方法
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 currentItem方法返回列表部件当前选择的项,setCurrentItem方法用于设置当前项. ...
- 谈谈 javascript的 call 和 apply用法
定义: ECMAScript规范为所有函数都包含两个方法(这两个方法非继承而来),call和apply,这两个函数都是在特定的作用域中调用函数,能改变函数的作用域,实际上是改变函数体内 this 的值 ...
- ASP自动刷新页面的实现方法总结
1) <meta http-equiv="refresh" content="10"> 10表示间隔10秒刷新一次 2) <script> ...
- NOI Online #1 入门组 魔法
全网都是矩阵快速幂,我只会倍增DP 其实这题与 AcWing 345. 牛站 还是比较像的,那题可以矩阵快速幂 / 倍增,这题也行. 先 \(Floyd\) 预处理两点之间不用魔法最短距离 \(d_{ ...
- Codeforces Edu Round 52 A-E
A. Vasya and Chocolate 模拟题.数据会爆\(int\),要开\(long\) \(long\) #include <iostream> #include <cs ...
- NOIP2017 D1T3 逛公园
发现 \(K\) 很小,不妨设置一个 \(O(NK)\) 的 \(DP\). 发现可行的最短路必须满足是 \(d <= dis <= d + K\). 由逆向思维,则是从某点出发,可以消耗 ...
- 基于gin的golang web开发:实现用户登录
前文分别介绍过了Resty和gin-jwt两个包,Resty是一个HTTP和REST客户端,gin-jwt是一个实现了JWT的Gin中间件.本文将使用这两个包来实现一个简单的用户登录功能. 环境准备 ...
- SpringBoot 拦截器和自定义注解判断请求是否合法
应用场景举例: 当不同身份的用户请求一个接口时,用来校验用户某些身份,这样可以对单个字段数据进行精确权限控制,具体看代码注释 自定义注解 /** * 对比请求的用户身份是否符合 * @author l ...