Springboot2集成pagehelper过程图解

网友投稿 305 2022-12-12


Springboot2集成pagehelper过程图解

springboot2集成pagehelper超级简单,本示例直接抄袭官方示例,仅将数据库由H2改成mysql而已。

1、pom.xml

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

org.springframework.boot

spring-boot-starter-parent

2.2.1.RELEASE

qinfeng.zheng

learn-pagequery

0.0.1-SNAPSHOT

learn-pagequery

Demo project for Spring Boot

1.8

org.springframework.boot

spring-boot-starter-web

org.mybatis.spring.boot

mybatis-spring-boot-starter

1.3.2

mysql

mysql-connector-java

5.1.47

runtime

org.springframework.boot

spring-boot-starter-test

test

org.junit.vintage

junit-vintage-engine

com.github.pagehelper

pagehelper-spring-boot-starter

1.2.12

org.springframework.boot

spring-boot-maven-plugin

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

org.springframework.boot

spring-boot-starter-parent

2.2.1.RELEASE

qinfeng.zheng

learn-pagequery

0.0.1-SNAPSHOT

learn-pagequery

Demo project for Spring Boot

1.8

org.springframework.boot

spring-boot-starter-web

org.mybatis.spring.boot

mybatis-spring-boot-starter

1.3.2

mysql

mysql-connector-java

5.1.47

runtime

org.springframework.boot

spring-boot-starter-test

test

org.junit.vintage

junit-vintage-engine

com.github.pagehelper

pagehelper-spring-boot-starter

1.2.12

org.springframework.boot

spring-boot-maven-plugin

2. application.peroperties

#pagehelper

pagehelper.helper-dialect=mysql

pagehelper.params=count=countSql

pagehelper.reasonable=true

pagehelper.support-methods-arguments=true

#mysql

spring.datasource.driver-class-name = com.mysql.jdbc.Driver

spring.datasource.url= jdbc:mysql://120.79.xx.xx:3306/test?useUnicode=yes&characterEncoding=UTF-8&useSSL=false

spring.datasource.username = root

spring.datasource.password = 1212212

3.实体类

public class Country implements Serializable {

private static final long serialVersionUID = 6569081236403751407L;

private int id;

private String countryname;

private String countrycode;

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getCountryname() {

return countryname;

}

public void setCountryname(String countryname) {

this.countryname = countryname;

}

public String getCountrycode() {

return countrycode;

}

public void setCountrycode(String countrycode) {

this.countrycode = countrycode;

}

}

4,mapper接口类

@Mapper

public interface CountryMapper {

@Select("select * from country")

List findAll();

}

5.cotroller类

@RestController

public class CountryController {

@Autowired

private CountryMapper countryMapper;

@GetMapping("/findAll")

public List findAll(@RequestParam(defaultValue = "1") Integer pageNum, @RequestParam(defaultValue = "20") Integer pageSize) {

PageHelper.startPage(pageNum, pageSize);

List countries = countryMapper.findAll();

Page page = (Page) countries;

System.out.println("每页展示条数:" + page.getPageSize());

System.out.println("总条数:" + page.getTotal());

System.out.println("当前页:" + page.getPageNum());

System.out.println("总页数:" + page.getPages());

return countries;

}

}

7.测试数据

直接抄官方数据

drop table country if exists;

create table country (

id int primary key auto_increment,

countryname varchar(32),

countrycode varchar(2)

);

insert into country (id, countryname, countrycode) values(1,'Angola','AO');

insert into country (id, countryname, countrycode) values(2,'Afghanistan','AF');

insert into country (id, countryname, countrycode) values(3,'Albania','AL');

insert into country (id, countryname, countrycode) values(4,'Algeria','DZ');

insert into country (id, countryname, countrycode) values(5,'Andorra','AD');

insert into country (id, countryname, countOcqIBcCbVrycode) values(6,'Anguilla','AI');

insert into country (id, countryname, countrycode) values(7,'Antigua and Barbuda','AG');

insert into country (id, countryname, countrycode) values(8,'Argentina','AR');

insert into country (id, countryname, countrycode) values(9,'Armenia','AM');

insert into country (id, countryname, countrycode) values(10,'Australia','AU');

insert into country (id, countryname, countrycode) values(11,'Austria','AT');

insert into country (id, countryname, countrycode) values(12,'Azerbaijan','AZ');

insert into country (id, countryname, countrycode) values(13,'Bahamas','BS');

insert into country (id, countryname, countrycode) values(14,'Bahrain','BH');

insert into country (id, countryname, countrycode) values(15,'Bangladesh','BD');

insert into country (id, countryname, countrycode) values(16,'Barbados','BB');

insert into country (id, countryname, countrycode) values(17,'Belarus','BY');

insert into country (id, countryname, countrycode) values(18,'Belgium','BE');

insert into country (id, countryname, countrycode) values(19,'Belize','BZ');

insert into country (id, countryname, countrycode) values(20,'Benin','BJ');

insert into country (id, countryname, countrycode) values(21,'Bermuda Is.','BM');

insert into country (id, countryname, countrycode) values(22,'Bolivia','BO');

insert into country (id, countryname, countrycode) values(23,'Botswana','BW');

insert into country (id, countryname, countrycode) values(24,'Brazil','BR');

insert into country (id, countryname, countrycode) values(25,'Brunei','BN');

insert into country (id, countryname, countrycode) values(26,'Bulgaria','BG');

insert into country (id, countryname, countrycode) values(27,'Burkina-faso','BF');

insert into country (id, countryname, countrycode) values(28,'Burma','MM');

insert into country (id, countryname, countrycode) values(29,'Burundi','BI');

insert into country (id, countryname, countrycode) values(30,'Cameroon','CM');

insert into country (id, countryname, countrycode) values(31,'Canada','CA');

insert into country (id, countryname, countrycode) values(32,'Central African Republic','CF');

insert into country (id, countryname, countrycode) values(33,'Chad','TD');

insert into country (id, countryname, countrycode) values(34,'Chile','CL');

insert into country (id, countryname, countrycode) values(35,'China','CN');

insert into country (id, countryname, countrycode) values(36,'Colombia','CO');

insert into country (id, countryname, countrycode) values(37,'Congo','CG');

insert into country (id, countryname, countrycode) values(38,'Cook Is.','CK');

insert into country (id, countryname, countrycode) values(39,'Costa Rica','CR');

insert into country (id, countryname, countrycode) values(40,'Cuba','CU');

insert into country (id, countrynamOcqIBcCbVe, countrycode) values(41,'Cyprus','CY');

insert into country (id, countryname, countrycode) values(42,'Czech Republic','CZ');

insert into country (id, countryname, countrycode) values(43,'Denmark','DK');

insert into country (id, countryname, countrycode) values(44,'Djibouti','DJ');

insert into country (id, countryname, countrycode) values(45,'Dominica Rep.','DO');

insert into country (id, countryname, countrycode) values(46,'Ecuador','EC');

insert into country (id, countryname, countrycode) values(47,'Egypt','EG');

insert into country (id, countryname, countrycode) values(48,'EI Salvador','SV');

insert into country (id, countryname, countrycode) values(49,'Estonia','EE');

insert into country (id, countryname, countrycode) values(50,'Ethiopia','ET');

insert into country (id, countryname, countrycOcqIBcCbVode) values(51,'Fiji','FJ');

insert into country (id, countryname, countrycode) values(52,'Finland','FI');

insert into country (id, countryname, countrycode) values(53,'France','FR');

insert into country (id, countryname, countrycode) values(54,'French Guiana','GF');

insert into country (id, countryname, countrycode) values(55,'Gabon','GA');

insert into country (id, countryname, countrycode) values(56,'Gambia','GM');

insert into country (id, countryname, countrycode) values(57,'Georgia','GE');

insert into country (id, countryname, countrycode) values(58,'Germany','DE');

insert into country (id, countryname, countrycode) values(59,'Ghana','GH');

insert into country (id, countryname, countrycode) values(60,'Gibraltar','GI');

insert into country (id, countryname, countrycode) values(61,'Greece','GR');

insert into country (id, countryname, countrycode) values(62,'Grenada','GD');

insert into country (id, countryname, countrycode) values(63,'Guam','GU');

insert into country (id, countryname, countrycode) values(64,'Guatemala','GT');

insert into country (id, countryname, countrycode) values(65,'Guinea','GN');

insert into country (id, countryname, countrycode) values(66,'Guyana','GY');

insert into country (id, countryname, countrycode) values(67,'Haiti','HT');

insert into country (id, countryname, countrycode) values(68,'Honduras','HN');

insert into country (id, countryname, countrycode) values(69,'Hongkong','HK');

insert into country (id, countryname, countrycode) values(70,'Hungary','HU');

insert into country (id, countryname, countrycode) values(71,'Iceland','IS');

insert into country (id, countryname, countrycode) values(72,'India','IN');

insert into country (id, countryname, countrycode) values(73,'Indonesia','ID');

insert into country (id, countryname, countrycode) values(74,'Iran','IR');

insert into country (id, countryname, countrycode) values(75,'Iraq','IQ');

insert into country (id, countryname, countrycode) values(76,'Ireland','IE');

insert into country (id, countryname, countrycode) values(77,'Israel','IL');

insert into country (id, countryname, countrycode) values(78,'Italy','IT');

insert into country (id, countryname, countrycode) values(79,'Jamaica','JM');

insert into country (id, countryname, countrycode) values(80,'Japan','JP');

insert into country (id, countryname, countrycode) values(81,'Jordan','JO');

insert into country (id, countryname, countrycode) values(82,'Kampuchea (Cambodia )','KH');

insert into country (id, countryname, countrycode) values(83,'Kazakstan','KZ');

insert into country (id, countryname, countrycode) values(84,'Kenya','KE');

insert into country (id, countryname, countrycode) values(85,'Korea','KR');

insert into country (id, countryname, countrycode) values(86,'Kuwait','KW');

insert into country (id, countryname, countrycode) values(87,'Kyrgyzstan','KG');

insert into country (id, countryname, countrycode) values(88,'Laos','LA');

insert into country (id, countryname, countrycode) values(89,'Latvia','LV');

insert into country (id, countryname, countrycode) values(90,'Lebanon','LB');

insert into country (id, countryname, countrycode) values(91,'Lesotho','LS');

insert into country (id, countryname, countrycode) values(92,'Liberia','LR');

insert into country (id, countryname, countrycode) values(93,'Libya','LY');

insert into country (id, countryname, countrycode) values(94,'Liechtenstein','LI');

insert into country (id, countryname, countrycode) values(95,'Lithuania','LT');

insert into country (id, countryname, countrycode) values(96,'Luxembourg','LU');

insert into country (id, countryname, countrycode) values(97,'Macao','MO');

insert into country (id, countryname, countrycode) values(98,'Madagascar','MG');

insert into country (id, countryname, countrycode) values(99,'Malawi','MW');

insert into country (id, countryname, countrycode) values(100,'Malaysia','MY');

insert into country (id, countryname, countrycode) values(101,'Maldives','MV');

insert into country (id, countryname, countrycode) values(102,'Mali','ML');

insert into country (id, countryname, countrycode) values(103,'Malta','MT');

insert into country (id, countryname, countrycode) values(104,'Mauritius','MU');

insert into country (id, countryname, countrycode) values(105,'Mexico','MX');

insert into country (id, countryname, countrycode) values(106,'Moldova, Republic of','MD');

insert into country (id, countryname, countrycode) values(107,'Monaco','MC');

insert into country (id, countryname, countrycode) values(108,'Mongolia','MN');

insert into country (id, countryname, countrycode) values(109http://,'Montserrat Is','MS');

insert into country (id, countryname, countrycode) values(110,'Morocco','MA');

insert into country (id, countryname, countrycode) values(111,'Mozambique','MZ');

insert into country (id, countryname, countrycode) values(112,'Namibia','NA');

insert into country (id, countryname, countrycode) values(113,'Nauru','NR');

insert into country (id, countryname, countrycode) values(114,'Nepal','NP');

insert into country (id, countryname, countrycode) values(115,'Netherlands','NL');

insert into country (id, countryname, countrycode) values(116,'New Zealand','NZ');

insert into country (id, countryname, countrycode) values(117,'Nicaragua','NI');

insert into country (id, countryname, countrycode) values(118,'Niger','NE');

insert into country (id, countryname, countrycode) values(119,'Nigeria','NG');

insert into country (id, countryname, countrycode) values(120,'North Korea','KP');

insert into country (id, countryname, countrycode) values(121,'Norway','NO');

insert into country (id, countryname, countrycode) values(122,'Oman','OM');

insert into country (id, countryname, countrycode) values(123,'Pakistan','PK');

insert into country (id, countryname, countrycode) values(124,'Panama','PA');

insert into country (id, countryname, countrycode) values(125,'Papua New Cuinea','PG');

insert into country (id, countryname, countrycode) values(126,'Paraguay','PY');

insert into country (id, countryname, countrycode) values(127,'Peru','PE');

insert into country (id, countryname, countrycode) values(128,'Philippines','PH');

insert into country (id, countryname, countrycode) values(129,'Poland','PL');

insert into country (id, countryname, countrycode) values(130,'French Polynesia','PF');

insert into country (id, countryname, countrycode) values(131,'Portugal','PT');

insert into country (id, countryname, countrycode) values(132,'Puerto Rico','PR');

insert into country (id, countryname, countrycode) values(133,'Qatar','QA');

insert into country (id, countryname, countrycode) values(134,'Romania','RO');

insert into country (id, countryname, countrycode) values(135,'Russia','RU');

insert into country (id, countryname, countrycode) values(136,'Saint Lueia','LC');

insert into country (id, countryname, countrycode) values(137,'Saint Vincent','VC');

insert into country (id, countryname, countrycode) values(138,'San Marino','SM');

insert into country (id, countryname, countrycode) values(139,'Sao Tome and Principe','ST');

insert into country (id, countryname, countrycode) values(140,'Saudi Arabia','SA');

insert into country (id, countryname, countrycode) values(141,'Senegal','SN');

insert into country (id, countryname, countrycode) values(142,'Seychelles','SC');

insert into country (id, countryname, countrycode) values(143,'Sierra Leone','SL');

insert into country (id, countryname, countrycode) values(144,'Singapore','SG');

insert into country (id, countryname, countrycode) values(145,'Slovakia','SK');

insert into country (id, countryname, countrycode) values(146,'Slovenia','SI');

insert into country (id, countryname, countrycode) values(147,'Solomon Is','SB');

insert into country (id, countryname, countrycode) values(148,'Somali','SO');

insert into country (id, countryname, countrycode) values(149,'South Africa','ZA');

insert into country (id, countryname, countrycode) values(150,'Spain','ES');

insert into country (id, countryname, countrycode) values(151,'Sri Lanka','LK');

insert into country (id, countryname, countrycode) values(152,'St.Lucia','LC');

insert into country (id, countryname, countrycode) values(153,'St.Vincent','VC');

insert into country (id, countryname, countrycode) values(154,'Sudan','SD');

insert into country (id, countryname, countrycode) values(155,'Suriname','SR');

insert into country (id, countryname, countrycode) values(156,'Swaziland','SZ');

insert into country (id, countryname, countrycode) values(157,'Sweden','SE');

insert into country (id, countryname, countrycode) values(158,'Switzerland','CH');

insert into country (id, countryname, countrycode) values(159,'Syria','SY');

insert into country (id, countryname, countrycode) values(160,'Taiwan','TW');

insert into country (id, countryname, countrycode) values(161,'Tajikstan','TJ');

insert into country (id, countryname, countrycode) values(162,'Tanzania','TZ');

insert into country (id, countryname, countrycode) values(163,'Thailand','TH');

insert into country (id, countryname, countrycode) values(164,'Togo','TG');

insert into country (id, countryname, countrycode) values(165,'Tonga','TO');

insert into country (id, countryname, countrycode) values(166,'Trinidad and Tobago','TT');

insert into country (id, countryname, countrycode) values(167,'Tunisia','TN');

insert into country (id, countryname, countrycode) values(168,'Turkey','TR');

insert into country (id, countryname, countrycode) values(169,'Turkmenistan','TM');

insert into country (id, countryname, countrycode) values(170,'Uganda','UG');

insert into country (id, countryname, countrycode) values(171,'Ukraine','UA');

insert into country (id, countryname, countrycode) values(172,'United Arab Emirates','AE');

insert into country (id, countryname, countrycode) values(173,'United Kiongdom','GB');

insert into country (id, countryname, countrycode) values(174,'United States of America','US');

insert into country (id, countryname, countrycode) values(175,'Uruguay','UY');

insert into country (id, countryname, countrycode) values(176,'Uzbekistan','UZ');

insert into country (id, countryname, countrycode) values(177,'Venezuela','VE');

insert into country (id, countryname, countrycode) values(178,'Vietnam','VN');

insert into country (id, countryname, countrycode) values(179,'Yemen','YE');

insert into country (id, countryname, countrycode) values(180,'Yugoslavia','YU');

insert into country (id, countryname, countrycode) values(181,'Zimbabwe','ZW');

insert into country (id, countryname, countrycode) values(182,'Zaire','ZR');

insert into country (id, countryname, countrycode) values(183,'Zambia','ZM');

好,一切准备就绪,启动springboot项目,浏览器访问,注意controller中打印

第一次请求:

controller打印:

第二次请求:

controller打印:

OK ,验证完毕!完美!!!

补充:

在做分页功能时,前端分页插件一般都需要一些诸如当前页数,总条数,总共多少页之类的数据,这时可以引用PageInfo这个对象,它完全能够满足插件的分页要求。

@GetMapping("/findAll")

public PageInfo findAll(@RequestParam(defaultValue = "1") Integer pageNum, @RequestParam(defaultValue = "20") Integer pageSize) {

PageHelper.startPage(pageNum, pageSize);

List countries = countryMapper.findAll();

// Page page = (Page) countries;

// System.out.println("每页展示条数:" + page.getPageSize());

// System.out.println("总条数:" + page.getTotal());

// System.out.println("当前页:" + page.getPageNum());

// System.out.println("总页数:" + page.getPages());

PageInfo result = new PageInfo<>(countries);

return result;

}

请求测试:

查看PageInfo类的源码,不难发现,它对前端分页插件的属性支持还是很全面的

private int pageNum; // 当前页码

private int pageSize; // 每页展示的多少条数据

private int size; // 数据总条数

private int startRow;

private int endRow;

private int pages; // 总共多少页

private int prePage; // 前一页

private int nextPage; // 后一页

private boolean isFirstPage;

private boolean isLastPage;

private boolean hasPreviousPage;

private boolean hasNextPage;

private int navigatePages;

private int[] navigatepageNums;

private int navigateFirstPage;

private int navigateLastPage;

好,暂时就到这里吧,以后再补充!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Python实现filter函数实现字符串切分
下一篇:基于Spring的Maven项目实现发送邮件功能的示例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~