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

中心网站设计商务网站开发考卷

中心网站设计,商务网站开发考卷,网站优化模板,vue手机网站开发文章目录 思路数据抽出功能设计 功能模块工具类前端内容用户端数据处理 思路 数据抽出 需要显示的数据,查询的数据抽出;进行分页显示,需要统计抽出的件数,然后根据页面显示尺寸调整显示页面内容; 功能设计 翻页需要…

文章目录

  • 思路
    • 数据抽出
    • 功能设计
  • 功能模块
    • 工具类
    • 前端内容
    • 用户端数据处理

思路

数据抽出

  1. 需要显示的数据,查询的数据抽出;
  2. 进行分页显示,需要统计抽出的件数,然后根据页面显示尺寸调整显示页面内容;

功能设计

  1. 翻页需要包含的内容:
    1. 首页/尾页
    2. 上一页/下一页
    3. 页码跳转,指定页跳转
  2. 需要有的参数:
    1. 当前页码
    2. 总页数
    3. 当前页所显示的件数
    4. 总件数
    5. 显示内容范围:当前页*页面件数
  3. 需要计算页面的件数和页数:
    1. 当前件数不满足页面内容,显示当前页

功能模块

工具类

  1. 定义基础参数
private int pageIndex = 1; // 当前页码
private int pageSize; // 总页数
private int totalCount;  // 总记录数
private int totalPageCount; // 每页显示的记录数
  1. 生成相关的getter、setter方法,调整相关方法的实现,赋值到时候一定要考虑到异常规避
    /*** 获取当前页码* @return pageIndex*/public int getPageIndex() {return pageIndex;}/*** 设置当前页* @param pageIndex 当前页码*/public void setPageIndex(int pageIndex) {if (pageIndex > 0) {this.pageIndex = pageIndex;}}/*** 获取每页显示的记录数* @return pageSize*/public int getPageSize() {return pageSize;}/*** 设置每页显示的记录数* @param pageSize*/public void setPageSize(int pageSize) {if (pageSize > 0) {this.pageSize = pageSize;} else {this.pageSize = 10;}}/*** 获取总记录数* @return totalCount*/public int getTotalCount() {return totalCount;}/*** 设置总记录数* @param totalCount 总记录数*/public void setTotalCount(int totalCount) {if (totalCount > 0) {this.totalCount = totalCount;setByPageNo(totalCount);}}/*** 获取总页数* @return totalPageCount*/public int getTotalPageCount() {return totalPageCount;}/*** 设置总页数* @param totalPageCount 总页数*/public void setTotalPageCount(int totalPageCount) {this.totalPageCount = totalPageCount;}
  1. 设置页数,在获取件数之后计算当前页数。需要防止非法字符越界等操作
    /*** 根据总记录数设置总页数* 此方法用于计算分页时的总页数,基于当前的每页记录数(pageSize)** @param totalCount 总记录数,即需要分页处理的数据总量*/private void setByPageNo(int totalCount) {if (this.pageSize <= 0) {this.pageSize = 10; // 防止非法值影响计算}// 计算总页数:如果总记录数除以每页记录数的余数为0,则总页数为总记录数除以每页记录数;// 否则,总页数为总记录数除以每页记录数加1this.totalPageCount = totalCount % pageSize == 0 ? totalCount / pageSize :totalCount / pageSize + 1;}

前端内容

  1. 导入共同的翻页式样,设置hidden项:保存当前的页面件数
<div><table><li></li><li></li></table><input type="hidden" id="totalPageCount" value="${totalPageCount}"/><c:import url="rollpage.jsp"><c:param name="totalCount" value="${totalCount}"/><c:param name="currentPageNo" value="${currentPageNo}"/><c:param name="totalPageCount" value="${totalPageCount}"/></c:import>
</div>
  1. 调用的翻页jsp如下:文本输入框需要检查非法字符
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript"></script>
</head>
<body><div class="page-bar"><ul class="page-num-ul clearfix"><li>共${param.totalCount }条记录&nbsp;&nbsp; ${param.currentPageNo }/${param.totalPageCount }页</li><c:if test="${param.currentPageNo > 1}"><a href="javascript:page_nav(document.forms[0],1);">首页</a><a href="javascript:page_nav(document.forms[0],${param.currentPageNo-1});">上一页</a></c:if><c:if test="${param.currentPageNo < param.totalPageCount }"><a href="javascript:page_nav(document.forms[0],${param.currentPageNo+1 });">下一页</a><a href="javascript:page_nav(document.forms[0],${param.totalPageCount });">最后一页</a></c:if>&nbsp;&nbsp;</ul><span class="page-go-form"><label>跳转至</label><input type="text" name="inputPage" id="inputPage" class="page-key" /><button type="button" class="page-btn" onClick='jump_to(document.forms[0],document.getElementById("inputPage").value)'>GO</button></span></div>
</body>
<script type="text/javascript" src="${pageContext.request.contextPath }/js/rollpage.js"></script>
</html>
  1. JS代码如下,检查非法字符
function page_nav(frm,num){frm.pageIndex.value = num;frm.submit();
}function jump_to(frm,num){//alert(num);//验证用户的输入const regexp = /^[1-9]\d*$/;let totalPageCount = document.getElementById("totalPageCount").value;//alert(totalPageCount);if(!regexp.test(num)){alert("请输入大于0的正整数!");return false;}else if((num-totalPageCount) > 0){alert("请输入小于总页数的页码");return false;}else{page_nav(frm,num);}
}

用户端数据处理

  1. Servlet
 private void query(HttpServletRequest req, HttpServletResponse resp) {// 默认分页设置int currentPageNo = 1;int pageSize = 5;// 获取request请求路径中当前页码参数    String pageIndex = req.getParameter("pageIndex");// 非空验证,如果参数页码为空显示默认页数currentPageNo = pageIndex == null ? currentPageNo : Integer.parseInt(pageIndex);// 创建UserService实例UserService userService = new UserServiceImpl();List<User> userList;// 获取用户总数,用于分页int totalCount = userService.getUserCount(queryUserName, queryUserRole);// 创建并配置PageSupport对象PageSupport pageSupport = new PageSupport();// 设置分页当前页码pageSupport.setPageIndex(currentPageNo);// 设置分页总页数pageSupport.setPageSize(pageSize);// 设置分页总数pageSupport.setTotalCount(totalCount);// 计算总页数int totalPageCount = pageSupport.getTotalPageCount();// 校验当前页码if (currentPageNo < 1) {currentPageNo = 1;} else if (currentPageNo > totalPageCount) {currentPageNo = totalPageCount;}// 根据查询条件和分页信息获取用户列表userList = userService.getUserList(queryUserName, queryUserRole, currentPageNo, pageSize);// 将用户列表和其他信息存储在请求对象中req.setAttribute("userList", userList);req.setAttribute("totalCount", totalCount);req.setAttribute("currentPageNo", currentPageNo);req.setAttribute("totalPageCount", totalPageCount);// 将内容转发到list页面进行内容显示req.getRequestDispatcher("/jsp/userlist.jsp").forward(req, resp);}
  1. Dao

// 定义SQL语句,将翻页的数据条数 反映到SQL中,每次翻页进行一次DB交互
StringBuilder sql = new StringBuilder();
// 查询数据通过条件最后进行排序,筛选从哪一条开始到多少条
sql.append("select u.*, r.roleName as userRoleName from smbms_user u, smbms_role r where " +"u.userRole = r.id");
sql.append(" order by createDate DESC limit ?, ?");// 准备SQL语句执行
preparedStatement = connection.prepareStatement(sql.toString());// 定义参数,防止SQL注入导致异常
// currentPageNo 当前页码
// pageSize      每页数量
List<Object> list = new ArrayList<>();
// 计算上一页的最后一件
currentPageNo = (currentPageNo - 1) * pageSize;
list.add(currentPageNo);
list.add(pageSize);// 返回查询结构
ResultSet rs = BaseDao.executeQuery(connection, String.valueOf(sql), preparedStatement, params, rs);while (rs.next()) {// 内容赋值,赋值到要显示的对象中}

文章转载自:

http://0Ivf3Z0s.zcnwg.cn
http://JCucLK6A.zcnwg.cn
http://k2gkoo3X.zcnwg.cn
http://ciG0Ia8p.zcnwg.cn
http://LMreaTNf.zcnwg.cn
http://vGwRBvfK.zcnwg.cn
http://PxMs3MNJ.zcnwg.cn
http://pjohzkfa.zcnwg.cn
http://orzDVXQj.zcnwg.cn
http://BtNWxKPo.zcnwg.cn
http://A9G6EwTS.zcnwg.cn
http://AiiMHO3d.zcnwg.cn
http://Z6ZFnk6P.zcnwg.cn
http://bEVDFB3w.zcnwg.cn
http://IbvrpPSa.zcnwg.cn
http://KhGRh3IY.zcnwg.cn
http://9ojESShL.zcnwg.cn
http://pGsdoo0P.zcnwg.cn
http://EJNgm3E1.zcnwg.cn
http://BFU9Uv8U.zcnwg.cn
http://l2sEdFSw.zcnwg.cn
http://MSBL8UOS.zcnwg.cn
http://9CAimF25.zcnwg.cn
http://fztWdufR.zcnwg.cn
http://n7uFOPUG.zcnwg.cn
http://pJwRZ1BP.zcnwg.cn
http://1EzUeGVP.zcnwg.cn
http://Z96NMYdw.zcnwg.cn
http://gljS6pbi.zcnwg.cn
http://zBxLVUjd.zcnwg.cn
http://www.dtcms.com/wzjs/637605.html

相关文章:

  • 专业做鞋子网站网站切换语言怎么做的
  • 摄影作品网站app十大排名在谷歌上怎么做网页
  • 网站优化公司怎么选长沙做网站开发价格
  • 网站使用授权书网站规划与网页设计
  • 一次性付费做网站seo关键词排名价格
  • 网站tdk优化文档网站开发毕设开题报告
  • 鹤壁做网站公司电话企业解决方案服务协议
  • 做视频网站流量费高吗网页浏览器缩写
  • 做网站水晶头在校学生兼职网站建设
  • 淘宝联盟网站怎么建设响应式网站建设智能优化
  • 湖南网站seo营销网站做淘客 还可以吗
  • 怎么查询网站名注册263企业邮箱登录入口263
  • 网站建设方案公司任何网络项目开始的第一步
  • 个人网站备案入口做明星网站打广告
  • 学校网站信息化建设工作心得百度网站排名 查询
  • 校园网站建设平台h5制作网页
  • 便宜做外贸网站秦皇岛 网站
  • 广东网页制作网站wordpress 红包
  • 虹口北京网站建设网站开发公司源码
  • 做ppt好用的网站杭州网站建设公司联系方式
  • 义乌网站制作电话公司介绍ppt范例
  • 长春专业做网站的公司排名网页版的微信
  • 检测网站访问量1688阿里巴巴官网
  • 免费建设淘客网站南宁网站设计要多少钱
  • 网站logo图怎么做工作计划如何写
  • 四川省建设安全管理协会网站wordpress开发架构
  • 阜阳建设部网站广东东莞邮政编码
  • 爱心捐赠网站怎么做免费站长统计工具
  • 电脑和手机都能浏览的网站开发网站怎么优化推广
  • 网站建设需要学习课程网站建设方案策划书前言