从入门到精通网站建设江西省住房与城乡建设厅网站
从入门到精通网站建设,江西省住房与城乡建设厅网站,辅导班广告去哪个网站做,网络工程的定义一#xff0c;分页的概念 分页是一种将大量数据或内容分割成多个页面以便逐页显示的方式。在分页中#xff0c;数据被分割成一定数量的页#xff0c;每页显示一部分数据或内容#xff0c;用户可以通过翻页或跳分页是一种将大量数据或内容分割成多个页面以便逐页显示的方式。…一分页的概念 分页是一种将大量数据或内容分割成多个页面以便逐页显示的方式。在分页中数据被分割成一定数量的页每页显示一部分数据或内容用户可以通过翻页或跳分页是一种将大量数据或内容分割成多个页面以便逐页显示的方式。在分页中数据被分割成一定数量的页每页显示一部分数据或内容用户可以通过翻页或跳转页面来浏览更多内容。转页面来浏览更多内容 1.1 分页应用场景 数据展示 当需要展示大量数据并将其划分为多个页面进行逐页查看时可以使用分页应用。例如在电子商务网站上展示商品列表或搜索结果时分页应用可以提供良好的用户体验 数据浏览 当需要在一个长列表或长文档中进行浏览时分页应用可以将内容分割成多个页面方便用户逐页阅读或浏览。例如在新闻网站上浏览新闻文章或在书籍电子阅读器中阅读电子书时分页应用可以让用户更加方便地跳转页面 搜索结果分页 当进行搜索操作时检索出来的结果可能非常庞大分页应用可以将搜索结果分页展示以便用户逐页查看结果。这在搜索引擎、论坛或社交媒体平台等场景下非常常见 1.2 分页的优点 提高性能 分页应用可以将大量数据分割成多个页面只加载当前页面所需的数据从而减轻数据库和服务器的负载提高查询和渲染速度。 改善用户体验 通过分页用户可以更方便地浏览和导航大量数据减少页面滚动和加载时间提高交互效率和用户满意度。 灵活导航 分页应用可以为用户提供灵活的导航选项允许用户跳转到特定页面或者调整每页显示的数据量以满足个性化需求。 数据安全性 通过限制每页数据的数量分页应用可以限制对数据的访问提高数据的安全性和隐私保护。 二分页功能的实现 本文章根据上篇文章内容进行扩展实现分页功能上一篇连接地址简单的模糊查询 为了让分页更加提高效率我们用的是一个PageHelper插件让插件来来帮助我们实现这个功能 pom.xml导入PageHelper插件 !-- ********************** 分页 Pom依赖 ********************** --dependencygroupIdcom.github.pagehelper/groupIdartifactIdpagehelper/artifactIdversion5.1.2/version/dependency mybatis.xml配置拦截器 注意该配置受dtd约束影响要注意配置的位置不然根目录会报错 plugins!-- 配置分页插件PageHelper, 4.0.0以后的版本支持自动识别使用的数据库 --plugin interceptorcom.github.pagehelper.PageInterceptor/plugin/pluginsMapper.xml的配置 select idmhcx4 resultTypecom.Bing.model.Book parameterTypejava.util.Map selectinclude refidBase_Column_List /from t_mvc_bookwhere bname like concat(%,#{bname},%)/select在uils导入PageBean工具类 package com.Bing.util;import javax.servlet.http.HttpServletRequest;
import java.io.Serializable;
import java.util.Map;public class PageBean implements Serializable {private static final long serialVersionUID 2422581023658455731L;//页码private int page1;//每页显示记录数private int rows10;//总记录数private int total0;//是否分页private boolean isPaginationtrue;//上一次的请求路径private String url;//获取所有的请求参数private MapString,String[] map;public PageBean() {super();}//设置请求参数public void setRequest(HttpServletRequest req) {String pagereq.getParameter(page);String rowsreq.getParameter(rows);String paginationreq.getParameter(pagination);this.setPage(page);this.setRows(rows);this.setPagination(pagination);this.urlreq.getContextPath()req.getServletPath();this.mapreq.getParameterMap();}public String getUrl() {return url;}public void setUrl(String url) {this.url url;}public MapString, String[] getMap() {return map;}public void setMap(MapString, String[] map) {this.map map;}public int getPage() {return page;}public void setPage(int page) {this.page page;}public void setPage(String page) {if(null!page!.equals(page.trim()))this.page Integer.parseInt(page);}public int getRows() {return rows;}public void setRows(int rows) {this.rows rows;}public void setRows(String rows) {if(null!rows!.equals(rows.trim()))this.rows Integer.parseInt(rows);}public int getTotal() {return total;}public void setTotal(int total) {this.total total;}public void setTotal(String total) {this.total Integer.parseInt(total);}public boolean isPagination() {return isPagination;}public void setPagination(boolean isPagination) {this.isPagination isPagination;}public void setPagination(String isPagination) {if(null!isPagination!.equals(isPagination.trim()))this.isPagination Boolean.parseBoolean(isPagination);}/*** 获取分页起始标记位置* return*/public int getStartIndex() {//(当前页码-1)*显示记录数return (this.getPage()-1)*this.rows;}/*** 末页* return*/public int getMaxPage() {int totalpagethis.total/this.rows;if(this.total%this.rows!0)totalpage;return totalpage;}/*** 下一页* return*/public int getNextPage() {int nextPagethis.page1;if(this.pagethis.getMaxPage())nextPagethis.getMaxPage();return nextPage;}/*** 上一页* return*/public int getPreivousPage() {int previousPagethis.page-1;if(previousPage1)previousPage1;return previousPage;}Overridepublic String toString() {return PageBean [page page , rows rows , total total , isPagination isPagination ];}
}Mapper类方法 ListBook mhcx4(Param(bname) String bname); 在Mapper.xml配置的方法名进行定义相对应的接口和实现类 接口方法 ListBook mhcx4(String bname, PageBean pageBean); 实现类 Overridepublic ListBook mhcx4(String bname, PageBean pageBean) {if(pageBean!null pageBean.isPagination()){PageHelper.startPage(pageBean.getPage(),pageBean.getRows());}ListBook booksbookMapper.mhcx4(圣墟);if(pageBean!null pageBean.isPagination()){PageInfoBook info new PageInfoBook(books);System.out.println(当前页: info.getPageNum());System.out.println(展示记录数info.getPageSize());System.out.println(符合查询条件的总记录info.getTotal());pageBean.setTotal((int) info.getTotal());}return books;} 测试 Testpublic void mhcx4() {PageBean pageBeannew PageBean();//实例化PageBeanpageBean.setPage(2);//第几页pageBean.setRows(15);//显示的条目bookBiz.mhcx4(圣墟,pageBean).forEach(System.out::println);//模糊查询} 运行结果 如果不想用分页功能单纯的想展示所有数据的话在测试的时候调用下面方法即可 pageBean.setPagination(false); 三Mybatis特殊字符 MyBatis 中有几个特殊字符需要进行转义或处理以避免 SQL 解析错误或相关问题。以下是一些常见的特殊字符及其处理方式 和 这两个字符在 XML 文件中有特殊含义因此需要进行转义。可以使用 lt; 和 gt; 分别表示 和 。 也需要进行转义可以使用 amp; 表示 当在 SQL 查询语句中使用字符串参数时需要注意单引号的处理。可以使用双引号包裹字符串或者使用两个单引号来转义一个单引号。例如SELECT * FROM user WHERE name John 或 SELECT * FROM user WHERE name OConnor。 % 和 _ 在使用 LIKE 语句进行模糊查询时% 表示任意数量的字符而 _ 表示一个字符。如果需要在字符串中使用字面量 % 和 _则需要使用 \ 进行转义。例如SELECT * FROM user WHERE name LIKE %\%% ESCAPE \。 | 和 在使用动态 SQL 标签如 if、choose、foreach 等时| 表示逻辑 OR 运算符而 表示逻辑 AND 运算符。如果要显示字面量的 | 和 则需要使用 \ 进行转义。例如![CDATA[${param1} \| ${param2}]]。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/88271.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!