JavaWeb - 模糊查询 + 分页
- 效果图
- 核心代码(12个一页)
<!-- 搜索 --> <form id="searchForm" method="post" action="/product/list.do"><div class="search"><input type="hidden" name="page" value="1"><input type="text" name="title" class="search_input" value="${title}"><input type="submit" class="search_submit" value=""></div> </form><!-- 分页 --> <div><%--<a href="/product/list.do?page=1">首页</a>--%><%--<a href="/product/list.do?page=${prePage}">上一页</a>--%><%--<a href="/product/list.do?page=${nextPage}">下一页</a>--%><%--<a href="/product/list.do?page=${totalPage}">尾页</a>--%><form method="post" action="/product/list.do" style="display: inline"><input type="hidden" name="page" value="1"><input type="hidden" name="title" value="${title}"><input type="submit" value="首页" class="btn"></form><form method="post" action="/product/list.do" style="display: inline"><input type="hidden" name="page" value="${prePage}"><input type="hidden" name="title" value="${title}"><input type="submit" value="上一页" class="btn"></form><form method="post" action="/product/list.do" style="display: inline"><input type="hidden" name="page" value="${nextPage}"><input type="hidden" name="title" value="${title}"><input type="submit" value="下一页" class="btn"></form><form method="post" action="/product/list.do" style="display: inline"><input type="hidden" name="page" value="${totalPage}"><input type="hidden" name="title" value="${title}"><input type="submit" value="尾页" class="btn"></form>第${curPage}页/共${totalPage}页 </div><!-- 响应内容省略 -->
package com.imooc.cart.servlet;import com.imooc.cart.data.LocalCache; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;/*** 商品(课程)控制器* @version 1.0*/ public class ProductServlet extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String name = req.getParameter("title");String pageStr = req.getParameter("page");int page = 1;if (null != pageStr && !"".equals(pageStr)) {page = Integer.parseInt(pageStr);}int totalProducts = LocalCache.getProductsCount(name);int totalPage = totalProducts % 12 > 0 ? totalProducts / 12 + 1 : totalProducts / 12;req.setAttribute("curPage", page);req.setAttribute("prePage", page > 1 ? page - 1 : 1);req.setAttribute("nextPage", totalPage > page ? page + 1 : totalPage);req.setAttribute("totalPage", totalPage);req.setAttribute("title", name);req.setAttribute("products", LocalCache.getProducts(page, 12, name));req.getRequestDispatcher("/WEB-INF/views/biz/list.jsp").forward(req, resp);} }
package com.imooc.cart.data;import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;/*** 本地缓存* @version 1.0*/ public final class LocalCache {private static Map<Long, Product> productMap = new HashMap<>();// 省略...public static List<Product> getProducts(int page, int size, String name) {List<Product> products = new ArrayList<>();if (null != name && !"".equals(name)) {productMap.values().forEach(product -> {if (product.getName().contains(name)) {products.add(product);}});} else {products.addAll(productMap.values());}int start = (page - 1) * size;int end = products.size() >= page * size ? page * size : products.size();return products.subList(start, end);}public static int getProductsCount(String name) {List<Product> products = new ArrayList<>();if (null != name && !"".equals(name)) {productMap.values().forEach(product -> {if (product.getName().contains(name)) {products.add(product);}});} else {products.addAll(productMap.values());}return products.size();} }
- 待更新...
JavaWeb - 模糊查询 + 分页相关推荐
- 新闻发布系统——模糊查询分页与主题分页
效果图(模糊查询分页) 实现代码(java部分) <ul class="classlist"><%//获取模糊查询的关键字String str = request ...
- MVC分层+JDBC+数据库+Servlet实现JSP文件上传和显示+模糊查询+分页
本文章主要介绍了一个简单的实例:用简单的MVC分层思想,使用数据库在web界面进行增删改查,以及上传,模糊查询+分页的实现. 1.util层(数据库连接管理) :连接数据库需要导包:mysql-con ...
- Mybatis-增删改查模糊查询分页注解(普通类型参数、引用类型参数、Map类型参数)
代码地址https://www.lanzouw.com/ihOmnwdtbrc 请先看项目目录结构,然后再写代码.target是编译后的输出目录,只需要保证src目录目录一致就行. 1.创建数据库my ...
- java 模糊查询 分页(自定义标签)
本次的实现是采用struts2+hibernate+分页标签 实现 class :PagerTag 是用来实现自定义分页标签,继承SimpleTagSupport实现自定义标签 public clas ...
- 【新闻管理系统】模糊查询+分页
目录 一.管理员界面的模糊查询+主题分页 二.游客界面的主题分页 一.管理员界面的模糊查询+主题分页 分页万能公式: pageIndex//第几页 pageSize//每一页多少条 star=(pag ...
- SpringBoot Mybatis-Plus 分页模糊查询 分页参数和响应封装
上一篇 SpringBoot集成Mysql.Mybatis.Mybatis-Plus,实现增删改查 一.前言 Mybatis-Plus封装了分页操作,简单配置一下就可以用.我这里还简单做了分页请求参数 ...
- Jsp新闻项目(规范访问分页之模糊查询主题分页查询[客户页面])
目录 一.规范访问 二.模糊查询分页 1.代码分析 上一章我们有讲到将伪表查询代替之前的模糊查询来进行分页,今天我们要在伪表查询的基础上加上模糊查询,也就是说在模糊查询时也可以分页了 三.主题分页查询 ...
- Redis实现分页和多条件模糊查询方案
导言 Redis是一个高效的内存数据库,它支持包括String.List.Set.SortedSet和Hash等数据类型的存储,在Redis中通常根据数据的key查询其value值,Redis没有模糊 ...
- C语言的模糊查询,【C语言如何实现中文模糊查询+急+】
C语言如何实现中文模糊查询? (急) 2009年02月25 - 我要建立一个生物信息检索系统,如何用C语言实现数据的模糊查询,数据包括中文和英文,请高手指点(最好附上例子或源程序),谢谢! 怎样用c语 ...
最新文章
- android 实现SSL握手协商
- 关于阿里云服务器本地访问不了的问题
- 插入排序最优_排序专题插入排序
- js图片前端压缩多图上传(旋转其实已经好了只是手机端有问题要先压缩再旋转)...
- 大兴服务器硬盘回收行情价格,回收服务器 硬盘 内
- windows 编程 —— 子窗口 与 子窗口控件
- angular : direative :comunication 指令之间的通讯
- 多功能时钟电路的设计框图_OLED显示屏,行驱动电路设计,单片机AT89C51与和显示屏的硬件接线...
- 东芝复印机2303出现f070_东芝复印机常见故障
- WIN 10 FTP 不好用问题总结
- 固定贴片电阻器封装尺寸
- 源码阅读工具 UnderStand
- 暗影精灵4清灰、加硅脂
- 全部驳回?元宇宙商标申请被国家知识产权局“劝退”
- Postman发送带cookie的http请求
- 几本关于用户体验的书籍
- 恒温烙铁使用注意事项
- 单例模式(饥汉式、懒汉式)
- hdu2191 买大米 多重背包 模板题
- 今年出现了5种电子商务SEO趋势