一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Mybatis实现联表查询并且分页功能代码示例

时间:2021-03-26 编辑:袖梨 来源:一聚教程网

本篇文章小编给大家分享一下Mybatis实现联表查询并且分页功能代码示例,文章介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

0. 表结构

person表

cat表

一个person有多个cat

实体类就这么写

1. 实体类

Person实体类

@Data
public class Person implements Serializable {
 private static final long serialVersionUID = -70682701290685641L;
 private Integer personid;
 private String firstname;
 private String lastname;
 private List cats;
}

Cat实体类

@Data
public class Cat implements Serializable {
 private static final long serialVersionUID = -39783356260765568L;
 private Integer id;
 private String name;
 /**
  * 猫的历史
  */
 private String history;
 /**
  * 猫的特征
  */
 private String features;
 /**
  * 大概的样子
  */
 private String imgurl;
 private Integer personId;
}

2. Mapper配置文件

PersonDao.xml





 
  
  
  
  
   
   
   
   
   
   
  
 

 
 

上面这个是查询单个人的,但是分页没有这么简单

一开始以为是这么写的,就简单的加一个limit

然后查出来就是这个样。。。

在子查询里面套子查询。。。实现limit分页的效果

select personid, firstname, lastname, id, name, history, features, imgurl, person_id
from mybatis.person p left join mybatis.cat c on p.PersonId = c.person_id
where PersonId in (select pp.PersonId from (select person.PersonId from person limit 2,2) as pp);

然后sql放到上面就搞好了

跑出来的效果就非常nice

热门栏目