当前位置: 首页 > news >正文

免费页面设计模板宁波正规seo企业优化

免费页面设计模板,宁波正规seo企业优化,个人在线做网站免费,邯郸做网站的电话这篇文章介绍一下怎么通过JQuery结合mybatis-plus的分页插件实现原生HTML页面的分页效果#xff0c;没有使用任何前端框架#xff0c;主要是对前端知识的应用。 创建Springboot项目 Intellij IDEA中创建一个Springboot项目#xff0c;项目名为pager。 添加必须的依赖包 修…这篇文章介绍一下怎么通过JQuery结合mybatis-plus的分页插件实现原生HTML页面的分页效果没有使用任何前端框架主要是对前端知识的应用。 创建Springboot项目 Intellij IDEA中创建一个Springboot项目项目名为pager。 添加必须的依赖包 修改项目的pom.xml添加一些基本的依赖jdbc、mysql、mybatis、mybatis-plus、lombok、druid数据库连接池。 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.5.9/versionrelativePath //parentgroupIdcn.edu.sgu.www/groupIdartifactIdpager/artifactIdversion0.0.1-SNAPSHOT/versionnamepager/namedescriptionjqueymybatis-plus实现简单分页功能/descriptionpropertiesjava.version1.8/java.versionmysql.version8.0.28/mysql.versiondruid.version1.1.21/druid.versionlombok.version1.18.22/lombok.versionmybatis.version2.2.2/mybatis.versionmybatis-plus.version3.5.1/mybatis-plus.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency!--lombok--dependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion${lombok.version}/version/dependency!--mysql--dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion${mysql.version}/version/dependency!--druid数据库连接池--dependencygroupIdcom.alibaba/groupIdartifactIddruid/artifactIdversion${druid.version}/version/dependency!--mybatis--dependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion${mybatis.version}/version/dependency!--mybatis-plus--dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion${mybatis-plus.version}/version/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build /project 添加数据源配置 将项目默认的配置文件application.properties重命名为application.yml。 添加启动端口、数据库、日志隔离级别的配置~ server:port: 8090logging:level:cn.edu.sgu.www.pager: debugspring:application:name: pagerdatasource:username: rootpassword: rooturl: jdbc:mysql://localhost:3306/pagerdriver-class-name: com.mysql.cj.jdbc.Drivertype: com.alibaba.druid.pool.DruidDataSource 准备数据库表 创建数据库pager然后执行项目src/main/resources目录下的pager.sql脚本文件。 添加mybatis-plus分页插件 package cn.edu.sgu.www.pager.config;import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;/*** Mybatis-Plus配置类* author heyunlin* version 1.0*/ Configuration public class MybatisPlusConfig {Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor new MybatisPlusInterceptor();// 添加分页插件interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));return interceptor;}} 创建响应相关实体类 响应状态码枚举类 package cn.edu.sgu.www.pager.restful;/*** 响应状态码* author heyunlin* version 1.0*/ public enum ResponseCode {/*** 请求成功*/OK(200),/*** 失败的请求*/BAD_REQUEST(400),/*** 未授权*/UNAUTHORIZED(401),/*** 禁止访问*/FORBIDDEN(403),/*** 找不到*/NOT_FOUND(404),/*** 不可访问*/NOT_ACCEPTABLE(406),/*** 冲突*/CONFLICT(409),/*** 服务器发生异常*/ERROR(500);private final Integer value;ResponseCode(Integer value) {this.value value;}public Integer getValue() {return value;}} web响应实体类 package cn.edu.sgu.www.pager.restful;import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.Data;import java.io.Serializable;/*** author heyunlin* version 1.0*/ Data public class JsonResultT implements Serializable {private static final long serialVersionUID 18L;/*** 响应数据*/private T data;/*** 响应状态码*/private Integer code;/*** 响应提示信息*/private String message;/*** 请求是否成功*/private boolean success;/*** 成功提示*/private static final String successMessage 请求成功;public static T JsonResultT success(String message, T data) {JsonResultT jsonResult new JsonResult();jsonResult.setCode(ResponseCode.OK.getValue());jsonResult.setMessage(message);jsonResult.setSuccess(true);jsonResult.setData(data);return jsonResult;}public static T JsonResultJsonPageT restPage(PageT page) {JsonPageT jsonPage JsonPage.restPage(page);return success(successMessage, jsonPage);}} 分页查询结果 package cn.edu.sgu.www.pager.restful;import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.Data;import java.io.Serializable; import java.util.List;/*** author heyunlin* version 1.0*/ Data public class JsonPageT implements Serializable {private static final long serialVersionUID 18L;/*** 总记录数*/private Long total;/*** 查询结果*/private ListT rows;/*** 根据Page对象构建JsonPage对象* param page PageT* return JsonPageT*/public static T JsonPageT restPage(PageT page) {JsonPageT jsonPage new JsonPage();jsonPage.setTotal(page.getTotal());jsonPage.setRows(page.getRecords());return jsonPage;}}分页参数的对象 package cn.edu.sgu.www.pager.restful;import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.Data;/*** author heyunlin* version 1.0*/ Data public class PagerT {/*** 页数*/private Integer page;/*** 每页的记录数*/private Integer rows;/*** 根据Pager创建Page对象* param pager Pager* return Page*/public static T PageT ofPage(PagerT pager) {return new PageT(pager.getPage(), pager.getRows());}} 创建数据库实体类 package cn.edu.sgu.www.pager.entity;import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data;import java.io.Serializable; import java.time.LocalDateTime;/*** author heyunlin* version 1.0*/ Data public class Song implements Serializable {private static final long serialVersionUID 18L;private String id;/*** 歌曲名*/private String name;/*** 歌手*/private String singer;/*** 描述信息*/private String note;/*** 最后一次修改时间*/JsonFormat(pattern yyyy-MM-dd HH:mm:ss, timezone GMT8)private LocalDateTime lastUpdateTime; } 创建持久层接口 继承mybatis-plus的BaseMapper接口 package cn.edu.sgu.www.pager.mapper;import cn.edu.sgu.www.pager.entity.Song; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper;/*** author heyunlin* version 1.0*/ Mapper public interface SongMapper extends BaseMapperSong {} 创建业务层接口 SongService package cn.edu.sgu.www.pager.service;import cn.edu.sgu.www.pager.entity.Song; import cn.edu.sgu.www.pager.restful.Pager; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;/*** author heyunlin* version 1.0*/ public interface SongService {/*** 分页查询歌曲列表* param pager 分页参数* return PageSong*/PageSong selectByPage(PagerSong pager); } SongServiceImpl package cn.edu.sgu.www.pager.service.impl;import cn.edu.sgu.www.pager.entity.Song; import cn.edu.sgu.www.pager.mapper.SongMapper; import cn.edu.sgu.www.pager.restful.Pager; import cn.edu.sgu.www.pager.service.SongService; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;/*** author heyunlin* version 1.0*/ Service public class SongServiceImpl implements SongService {private final SongMapper songMapper;Autowiredpublic SongServiceImpl(SongMapper songMapper) {this.songMapper songMapper;}Overridepublic PageSong selectByPage(PagerSong pager) {PageSong page Pager.ofPage(pager);return songMapper.selectPage(page, null);}} 创建控制器类 package cn.edu.sgu.www.pager.controller;import cn.edu.sgu.www.pager.entity.Song; import cn.edu.sgu.www.pager.restful.JsonPage; import cn.edu.sgu.www.pager.restful.JsonResult; import cn.edu.sgu.www.pager.restful.Pager; import cn.edu.sgu.www.pager.service.SongService; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;/*** author heyunlin* version 1.0*/ RestController RequestMapping(path /song, produces application/json;charsetutf-8) public class SongController {private final SongService songService;Autowiredpublic SongController(SongService songService) {this.songService songService;}GetMapping(/selectByPage)public JsonResultJsonPageSong selectByPage(PagerSong pager) {PageSong page songService.selectByPage(pager);return JsonResult.restPage(page);}} 创建前端页面 song_list.html 在页面创建一个带标题的表格然后在表格下方创建一个简单的分页组件~ 可以调整每页显示几条数据上一页、下一页、指定页数的跳转。 !DOCTYPE html htmlheadmeta charsetUTF-8title权限管理页面/titlescript src/js/jquery.min.js/scriptscript src/js/ajaxUtils.js/scriptscript src/js/song_list.js/scriptstyle.table {height: 635px;overflow-y: scroll;border: 1px black solid;}#pageNum {width: 50px;}/style/headbodydiv classtabletable border1thead歌曲列表/theadtbody idsong_list/tbody/table/divdiv每页展示select idrows/select条记录emsp;button typebutton idpre上一页/buttonemsp;当前第span idpage1/span页emsp;button typebutton idnext下一页/buttonemsp;前往第input typenumber idpageNum /页/div/body /html song_list.js /*** 总页数*/ let total; /*** 当前页*/ let page 1; /*** 每页显示的记录数*/ let rows 15; /*** 页码*/ let pageList [15, 50 ,100, 200, 500];/*** 加载表格数据*/ function loadData() {/*** 表头*/let thead ;/*** 表格体*/let tbody ;thead tr;thead th歌曲ID/th;thead th歌曲名/th;thead th歌手/th;thead th歌曲信息/th;thead th最后一次修改时间/th;thead /tr;ajaxGet(/song/selectByPage, {page: page,rows: rows}, function (resp) {let data resp.data;let list data.rows;total data.total;for (let i 0; i list.length; i) {let data list[i];tbody tr;tbody td data.id /td;tbody td data.name /td;tbody td data.singer /td;tbody td data.note /td;tbody td data.lastUpdateTime /td;tbody /tr;}$(#song_list).empty().append(thead tbody);}, error); }/*** 渲染分页组件*/ function fetchRows() {let options ;for (let i 0; i pageList.length; i) {let page pageList[i];options option value page page /option;}$(#rows).append(options); }$(document).ready(function () {// 加载表格数据loadData();// 渲染分页组件fetchRows();/*** 绑定下拉框改变事件*/$(#rows).change(function () {// 设置每页记录数为下拉框的值rows $(this).val();loadData();});/*** 上一页*/$(#pre).on(click, function () {if (page 1) {page--;// 重新加载表格数据loadData();// 设置当前是第几页$(#page).html(page);}});/*** 下一页*/$(#next).on(click, function () {let maxPage (total % rows) 0 ? (total / rows 1) : (total / rows);if (page maxPage - 1) {page;// 重新加载表格数据loadData();// 设置当前是第几页$(#page).html(page);}});/*** 绑定键盘事件*/$(#pageNum).keydown(function () {let event window.event;// 不允许输入空格if(event.keyCode 32) {event.returnValue false;} else if(event.keyCode 13) {// 获取最大页数let maxPage total % rows 0 ? (total / rows 1) : (total / rows);// 获取输入框内容let pageNum parseInt($(this).val());// 修改页数page pageNum maxPage ? maxPage : pageNum;// 加载表格loadData();// 设置当前输入框的值$(this).val(page);// 设置当前在第几页$(#page).html(page);}});}); 好了文章就分享到这里了需要代码的可以从git下载 jqueymybatis-plus实现简单分页功能https://gitee.com/muyu-chengfeng/pager.git
http://www.pierceye.com/news/986271/

相关文章:

  • 网站备案接入商是什么网站语言版本
  • 个人做网站做什么样的话网站站点连接不安全
  • 响应式网站 外贸平顶山 网站设计
  • 手袋 东莞网站建设成都哪里好玩适合情侣
  • 苏州哪个公司做门户网站给学校建网站那个系统好
  • 现在网站都是拿什么软件做的wordpress 自动alt
  • 山东省住房和城乡建设部网站首页网站中的自助报价系统
  • 如何 网站收录软件开发大概需要多少钱
  • 网站建设微信端简洁型网页
  • 一般的网站开发语言用什么《网站开发实践》 实训报告
  • php企业网站开发实验总结服务器
  • 织梦网站文章内容模板荣耀商城
  • seo 网站太小平面设计师招聘广告文案
  • 凡科网站建设桂林网站开发m0773
  • 做跨境都有哪些网站做电影类网站
  • 琼海商城网站建设东莞网站建设价位
  • 装饰网站建设重要性云服务器 多个网站
  • 邯郸市城乡建设管理局网站小米商城wordpress
  • 河北中石化建设网站html用户登录注册页面代码
  • 如何在网站后台备份数据库表设计本家装
  • 网站开发绑定qq企业域名注册
  • nas做网站网站安全建设工作总结
  • 淮北网站建设费用男女做暖暖到网站
  • wordpress站点管理浙江东南网架公司
  • 做外贸用什么搜索网站企业贷款政策最新消息2022
  • 各大网站创始人株洲网站建设报价方案
  • 想做网站多少钱wordpress数据连接失败1223
  • 株洲建设网站公司个人网站建设简历
  • 地方网站系统wordpress管理入口
  • 个人做网站开发指标开发板是什么东西