springboot整合mybatis-plus实现多表分页查询的示例代码
1.新建一个springboot工程
2.需要导入mybatis和mybatis-plus的依赖文件
com.baomidou mybatis-plus-boot-starter 3.1.1 org.mybatis.spring.boot mybatis-spring-boot-starter 2.0.1
3.application.yml配置文件
server: port:8080 spring: datasource: url:jdbc:mysql://localhost:3306/mybatisplus?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=UTC username:root password:数据库密码 mybatis: mapper-locations:classpath*:mapper/*.xml mybatis-plus: mapper-locations:classpath:/mapper/*Mapper.xml logging: level: com.tuanzi.*:debug
4.首先我们需要写一个类来配置分页插件
省略import @EnableTransactionManagement @Configuration @MapperScan("com.tuanzi.*.mapper*") publicclassMybatisPlusConfig{ /** *分页插件 */ @Bean publicPaginationInterceptorpaginationInterceptor(){ returnnewPaginationInterceptor(); } }
5.controller类
@RestController @RequestMapping("/user") publicclassUserController{ @Autowired UserServiceuserService; /** *多表关联,分页查询(1对1) *@parampage *@return */ @RequestMapping("/findAll") publicResult>findAll(@RequestBodyPage page){ returnuserService.pages(page); } /** *多表关联,分页查询(1对多) *@parampage *@return */ @RequestMapping("/selectAll") publicResult >selectAll(@RequestBodyPage page){ returnuserService.pageList(page); } }
6.service类
publicinterfaceUserServiceextendsIService{ Result >pages(Page page); Result >pageList(Page page); }
7.service实现类
@Service publicclassUserServiceImplextendsServiceImplimplementsUserService{ @Autowired UserMapperuserMapper; @Override publicResult >pages(Page page){ IPage userIPage=userMapper.Pages(page); returnResult.getSuccess("分页查询成功",userIPage); } @Override publicResult >pageList(Page page){ IPage userIPage=userMapper.pageList(page); returnResult.getSuccess("分页查询成功",userIPage); } }
8.mapper接口
注意!!:如果入参是有多个,需要加注解指定参数名才能在xml中取值
@Mapper @Repository publicinterfaceUserMapperextendsBaseMapper{ IPage Pages(@Param("page")Page page); IPage pageList(@Param("page")Page page); }
9.xml文件
一对一关联
一对多关联
SQL语句:
selecta.idid,a.namename,a.ageage,a.emailemail,b.positionposition,b.user_iduser_idfromuseraLEFTJOINworkbona.id=b.user_id selecta.idid,a.namename,a.ageage,a.emailemail,b.positionposition,b.user_iduser_idfromuseraLEFTJOINworkbona.id=b.user_id
10.这样就基本完成了!我这里省略了实体类
我们运行一下,用postman测试一下结果
这里我们需要传2个参数,当然我们也可以不用传,因为mybatis-plus有默认值
来看下mybatis-plus的page源码
效果图:
最后附赠源码地址:demo
到此这篇关于springboot整合mybatis-plus实现多表分页查询的示例代码的文章就介绍到这了,更多相关springboot整合mybatis-plus多表分页查询内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。