1. 效果图
  2. 核心代码(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();}
    }
  3. 待更新...

JavaWeb - 模糊查询 + 分页相关推荐

  1. 新闻发布系统——模糊查询分页与主题分页

    效果图(模糊查询分页) 实现代码(java部分) <ul class="classlist"><%//获取模糊查询的关键字String str = request ...

  2. MVC分层+JDBC+数据库+Servlet实现JSP文件上传和显示+模糊查询+分页

    本文章主要介绍了一个简单的实例:用简单的MVC分层思想,使用数据库在web界面进行增删改查,以及上传,模糊查询+分页的实现. 1.util层(数据库连接管理) :连接数据库需要导包:mysql-con ...

  3. Mybatis-增删改查模糊查询分页注解(普通类型参数、引用类型参数、Map类型参数)

    代码地址https://www.lanzouw.com/ihOmnwdtbrc 请先看项目目录结构,然后再写代码.target是编译后的输出目录,只需要保证src目录目录一致就行. 1.创建数据库my ...

  4. java 模糊查询 分页(自定义标签)

    本次的实现是采用struts2+hibernate+分页标签 实现 class :PagerTag 是用来实现自定义分页标签,继承SimpleTagSupport实现自定义标签 public clas ...

  5. 【新闻管理系统】模糊查询+分页

    目录 一.管理员界面的模糊查询+主题分页 二.游客界面的主题分页 一.管理员界面的模糊查询+主题分页 分页万能公式: pageIndex//第几页 pageSize//每一页多少条 star=(pag ...

  6. SpringBoot Mybatis-Plus 分页模糊查询 分页参数和响应封装

    上一篇 SpringBoot集成Mysql.Mybatis.Mybatis-Plus,实现增删改查 一.前言 Mybatis-Plus封装了分页操作,简单配置一下就可以用.我这里还简单做了分页请求参数 ...

  7. Jsp新闻项目(规范访问分页之模糊查询主题分页查询[客户页面])

    目录 一.规范访问 二.模糊查询分页 1.代码分析 上一章我们有讲到将伪表查询代替之前的模糊查询来进行分页,今天我们要在伪表查询的基础上加上模糊查询,也就是说在模糊查询时也可以分页了 三.主题分页查询 ...

  8. Redis实现分页和多条件模糊查询方案

    导言 Redis是一个高效的内存数据库,它支持包括String.List.Set.SortedSet和Hash等数据类型的存储,在Redis中通常根据数据的key查询其value值,Redis没有模糊 ...

  9. C语言的模糊查询,【C语言如何实现中文模糊查询+急+】

    C语言如何实现中文模糊查询? (急) 2009年02月25 - 我要建立一个生物信息检索系统,如何用C语言实现数据的模糊查询,数据包括中文和英文,请高手指点(最好附上例子或源程序),谢谢! 怎样用c语 ...

最新文章

  1. android 实现SSL握手协商
  2. 关于阿里云服务器本地访问不了的问题
  3. 插入排序最优_排序专题插入排序
  4. js图片前端压缩多图上传(旋转其实已经好了只是手机端有问题要先压缩再旋转)...
  5. 大兴服务器硬盘回收行情价格,回收服务器 硬盘 内
  6. windows 编程 —— 子窗口 与 子窗口控件
  7. angular : direative :comunication 指令之间的通讯
  8. 多功能时钟电路的设计框图_OLED显示屏,行驱动电路设计,单片机AT89C51与和显示屏的硬件接线...
  9. 东芝复印机2303出现f070_东芝复印机常见故障
  10. WIN 10 FTP 不好用问题总结
  11. 固定贴片电阻器封装尺寸
  12. 源码阅读工具 UnderStand
  13. 暗影精灵4清灰、加硅脂
  14. 全部驳回?元宇宙商标申请被国家知识产权局“劝退”
  15. Postman发送带cookie的http请求
  16. 几本关于用户体验的书籍
  17. 恒温烙铁使用注意事项
  18. 单例模式(饥汉式、懒汉式)
  19. hdu2191 买大米 多重背包 模板题
  20. 今年出现了5种电子商务SEO趋势

热门文章

  1. C# 网络编程之套接字编程基础知识
  2. 多层商厦广播播音及背景音乐系统解决方案
  3. 迟到两年的求职总结经验分享
  4. 【转】四年记——身在中小企业
  5. [JavaWeb]谁是卧底游戏制作(网络游戏)
  6. java 多异步调用_java 异步调用与多线程
  7. 狂神Smbms(javaWeb超市订单管理系统)实现
  8. Mac github登录不上
  9. 【网络安全入门】SQL注入是什么?SQL注入危害有哪些?
  10. 常用的XSS攻击手段和目的有哪些 网络安全入门教程