分页插件:PageHelper+BootStrap+Vue+axios实现分页功能
创始人
2024-06-02 17:56:21
0

本教程需要有MyBatisPlus基础,学习MyBatisPlus请参考
SpringBoot第 14 讲:SpringBoot+MyBatisPlus

案例效果

在这里插入图片描述

技术栈

后端技术:SpringBoot2.7.9、MyBatisPlus3.5.1、MySQL8
前端技术:Vue2.5.16+axios、BootStrap3.3.7

一、后端开发

1.1、配置MyBatisPlus

1.1.1、在pom.xml中添加依赖

		org.springframework.bootspring-boot-starter-webcom.baomidoumybatis-plus-boot-starter3.5.1org.projectlomboklombok1.18.20mysqlmysql-connector-java8.0.32

1.1.2、在application.yml中配置数据源

server:port: 8070
spring:datasource:type: com.zaxxer.hikari.HikariDataSourcedriver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.01:3306/test_plus?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=trueusername: rootpassword: Aa123123.
mybatis-plus:type-aliases-package: demo.entityconfiguration:log-impl: org.apache.ibatis.logging.stdout.StdOutImplglobal-config:db-config:table-prefix: t_id-type: automapper-locations: classpath:mappers/*.xml

1.1.3、在启动类中配置分页插件

package demo;import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@SpringBootApplication
@Configuration
@MapperScan("demo.mapper")
public class Demo {/** 配置分页插件*/@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));return interceptor;}public static void main(String[] args) {SpringApplication.run(Demo.class);}
}

1.2、后台开发

1.2.1、SQL脚本

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;-- ----------------------------
-- Table structure for t_article
-- ----------------------------
DROP TABLE IF EXISTS `t_article`;
CREATE TABLE `t_article` (`id` bigint(20) NOT NULL AUTO_INCREMENT,`title` varchar(50) DEFAULT NULL,`logo` varchar(255) DEFAULT NULL,`descn` varchar(160) DEFAULT NULL,`create_time` datetime DEFAULT NULL,`cid` bigint(20) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1630090627736408069 DEFAULT CHARSET=utf8;-- ----------------------------
-- Records of t_article
-- ----------------------------
BEGIN;
INSERT INTO `t_article` (`id`, `title`, `logo`, `descn`, `create_time`, `cid`) VALUES (1, '扬子xx', NULL, 'eeeeeeee', '2023-01-02 00:00:00', 2);
INSERT INTO `t_article` (`id`, `title`, `logo`, `descn`, `create_time`, `cid`) VALUES (1630090618022400001, '扬子晚报1', NULL, 'dddsfjslfjalskd', '2023-01-03 00:00:00', 2);
INSERT INTO `t_article` (`id`, `title`, `logo`, `descn`, `create_time`, `cid`) VALUES (1630090625282740226, '扬子晚报2', NULL, 'dddsfjslfjalskd', '2023-01-04 00:00:00', 2);
INSERT INTO `t_article` (`id`, `title`, `logo`, `descn`, `create_time`, `cid`) VALUES (1630090625865748482, '扬子晚报3', NULL, 'dddsfjslfjalskd', '2023-01-05 00:00:00', 1);
INSERT INTO `t_article` (`id`, `title`, `logo`, `descn`, `create_time`, `cid`) VALUES (1630090626520059905, '扬子晚报4', NULL, 'dddsfjslfjalskd', '2023-01-06 00:00:00', 2);
INSERT INTO `t_article` (`id`, `title`, `logo`, `descn`, `create_time`, `cid`) VALUES (1630090627165982721, '扬子晚报5', NULL, 'dddsfjslfjalskd', '2023-01-07 00:00:00', 1);
INSERT INTO `t_article` (`id`, `title`, `logo`, `descn`, `create_time`, `cid`) VALUES (1630090627736408066, '扬子晚报6', NULL, 'dddsfjslfjalskd', '2023-01-08 00:00:00', 1);
INSERT INTO `t_article` (`id`, `title`, `logo`, `descn`, `create_time`, `cid`) VALUES (1630090627736408068, 'qqq1w', 'kdsjlsfjieosjfiosjdfo', 'eeeee', '2023-02-03 00:00:00', 2);
COMMIT;-- ----------------------------
-- Table structure for t_channel
-- ----------------------------
DROP TABLE IF EXISTS `t_channel`;
CREATE TABLE `t_channel` (`id` bigint(20) NOT NULL,`channel_name` varchar(50) DEFAULT NULL,`create_time` datetime DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;-- ----------------------------
-- Records of t_channel
-- ----------------------------
BEGIN;
INSERT INTO `t_channel` (`id`, `channel_name`, `create_time`) VALUES (1, '头条', '2023-02-27 17:27:14');
INSERT INTO `t_channel` (`id`, `channel_name`, `create_time`) VALUES (2, '头七', '2023-02-27 17:27:14');
COMMIT;SET FOREIGN_KEY_CHECKS = 1;

1.2.2、实体Article

package demo.entity;import lombok.Data;@Data
public class Article {private Long id;private String title;private String logo;private String descn;private String createTime;private Long cid;
}

1.2.3、ArticleMapper.java

package demo.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import demo.entity.Article;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;@Repository
public interface ArticleMapper extends BaseMapper
{Page
selectByPage(Page
page, @Param("title") String title); }

1.2.4、ArticleMapper.xml





1.2.5、ArticleController

package demo.controller;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import demo.entity.Article;
import demo.mapper.ArticleMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@CrossOrigin
public class ArticleController {@Autowiredprivate ArticleMapper articleMapper;@GetMapping("/list")public Page
findAll(Long pageIndex, Long pageSize){Page
page = articleMapper.selectPage(new Page(pageIndex, pageSize), null);return page;}@GetMapping("/list_custom")public Page
customFindAll(Long pageIndex, Long pageSize, String title){Page
page = articleMapper.selectByPage(new Page(pageIndex, pageSize), title);return page;} }

二、前端开发

2.1、html代码

	
文章列表
编号标题描述发布时间操作
{{art.id}}{{art.title}}{{art.descn}}{{art.createTime}}

2.2、Js代码

	

三、附录

3.1、完整po.m.xml文件


4.0.0org.springframework.bootspring-boot-starter-parent2.7.9 com.examplepage-helper-demo0.0.1-SNAPSHOTpage-helper-demoDemo project for Spring Boot1.8org.springframework.bootspring-boot-starter-webcom.baomidoumybatis-plus-boot-starter3.5.1org.projectlomboklombok1.18.20mysqlmysql-connector-java8.0.32org.springframework.bootspring-boot-maven-plugin

相关内容

热门资讯

调研速递|诺斯贝尔接受众多投资... 5月14日下午2点至5点,诺斯贝尔通过全景网“投资者关系互动平台”(https://ir.p5w.n...
300元一张的撕拉片走红长沙市...   长沙晚报全媒体记者 贾凯清 见习记者 王佳怡  一次成像、没有底片,快门声响后,轻轻一撕一拉,一...
华纳改弦更张:时隔 2 年,M... IT之家 5 月 15 日消息,华纳兄弟探索公司(Warner Bros. Discovery, W...
我的二手情缘 转自:湖州日报  ○ 吴严林  我从学校刚毕业几年,每月工资只有1500元,日常开销大,想办法省钱才...
手机店收购香烟?违法!   近日,江西省高安市检察院“阳光”未检团队检察官到辖区某手机店回访时,店老板说:“我们已经意识到自...
腾讯希望AI助推下延长广告业务... 每经记者|黄婉银    每经编辑|张海妮     腾讯(HK00700,股价521...
中奖名单公布!还有机会→ 转自:中华人民共和国应急管理部参与方式:有奖答题共7期参与答题后在评论区互动留言我们每期将抽取评论点...
墨西哥中部发生严重交通事故致2... 转自:新华网  新华社墨西哥城5月14日电(记者吴昊 翟淑睿)墨西哥中部普埃布拉州内政厅长萨穆埃尔·...
岂能任虚假涉军信息横行舆论场 #动辄赢麻了的咋呼该歇了#【#岂能任虚假涉军信息横行舆论场#】 军事话题向来自带流量,特别是在世界并...
秀洲新生代企业家 赴北大“充电... 转自:嘉兴日报 ■记者 吴冰鑫 通讯员 王伟杰本报讯 为进一步优化新生代企业家教育培养体系,加快推动...
第六届全国导游大赛将办 转自:中国旅游报 本报讯(记者 魏彪)文化和旅游部、全国总工会、共青团中央、全国妇联日前印发通知,决...
周祖翼赵龙会见中国进出口银行董... 本报讯 (记者 周琳) 5月14日,省委书记、省人大常委会主任周祖翼在福州会见了中国进出口银行党委书...
隔夜要闻:黄金跌超2% 普京确...   欲览更多环球财经资讯,请移步7×24小时实时财经新闻  市场  收盘:美股涨跌不一 道指连续第二...
从展厅到蓝天,创新保险护航低空... 在四川,无人机打通包裹进村“最后一公里”;在长三角,“五一”假期首条跨省低空载客航线带客观光忙不停…...
江苏65所技工院校今年拟增设1... 交汇点讯 江苏省人社厅5月14日发布消息,根据《江苏省技工院校教学管理规范》要求,经专家审核、综合评...
王宁率云南省友好代表团访问马来...   云南网讯  5月11日至14日,省委书记、省人大常委会主任王宁率云南省友好代表团访问马来西亚,深...
10吨“《浪潮》”激荡西岸大剧... 转自:上观新闻在左联成立95周年之际,聚焦革命烈士与文学志士的舞台剧《浪潮》今起在西岸大剧院上演至1...
硕鼠硕鼠,无食我黍 ■毕传国 转自:嘉兴日报硕鼠硕鼠,无食我黍 ■毕传国
储罐相继爆炸,3人死亡! 转自:中国应急管理2024年9月11日9时14分许河北省张家口市怀来县大黄庄镇张家口龙潭酿酒有限责任...
易生活控股拟获中国创新投资拆让... .ct_hqimg {margin: 10px 0;} .hqimg_wrapper {text-a...