分类商品的分页展示
该系统需求主要围绕分类商品的分页展示展开:通过修改head.jsp页面上的超链接结构(如/store/product?method=findByPage&pageNumber=1&cid=xxx)实现分类商品的分页跳转;在ProductServlet服务器中实现findByPage方法,并通过Service层和DAO层将查询结果封装到PageBean对象中并转发至/jsp/productlist.jsp页面;同时,在/jsp/productlist.jsp页面上添加分页条、上一页、中间按钮等元素供用户浏览;最后通过测试确保分类商品的分页展示功能正常运行(如点击导航菜单跳转至/jsp/product_list.jsp页面显示商品列表)。
文章目录
-
- 分类商品的分页展示
-
- 需求
- 修改head.jsp页面上的商品分类名称的超链接
- ProductServlet服务器中的findByPage方法
- service层的findByPage方法
- dao层的findByPage和getTotalRecord方法
- 在/jsp/product_list.jsp上展示商品
- 点击导航栏菜单中的首页跳转页面
- 怎样获取到浏览器地址栏中的参数
- PageBean中的总页数这个属性,怎么赋值?
- 测试
分类商品的分页展示
需求
需求:当用户单击菜单栏中的某个类别选项时,请以分页形式呈现该类别内的商品列表(默认显示第一页)。
单击菜单栏中的分类选项时,在product表中会呈现对应的分类商品。然而,在product表中所列出的对应分类的商品数量可能较多,在一个页面内无法完整展示所有商品信息。因此,默认开启分页浏览功能是必要的。
修改head.jsp页面上的商品分类名称的超链接
1.修改head.jsp上的每个分类的超链接
如下图:

ProductServlet服务器中的findByPage方法
为了在ProductServlet服务器上实现 pagination功能, 我们需要编写一个名为findByPage的方法。该方法首先将请求发送至service层, 执行分页数据查询操作, 将获取的分页数据封装成一个PageBean对象, 然后将该PageBean实例嵌入至request的作用域中, 最终将处理后的结果转发至/jsp/product_list.jsp页面进行展示, 如下图所示。

再来看一看PageBean类中的属性和方法,如下图:

service层的findByPage方法
service层的findByPage方法主要是封装PageBean对象的,如下图:

dao层的findByPage和getTotalRecord方法

在/jsp/product_list.jsp上展示商品
如何在ProductServlet服务器的findByPage方法中获得被Request对象捕获的PageBean对象?请参考下图。

展示分页条:

上一页按钮:

下一页按钮和中间的分页按钮:

在 /jsp/product_list.jsp 页面中查看每个商品的图片或查看每个商品名称都可跳转至 /jsp/product_info.jsp 页面;因为需要对 /jsp/product_list.jsp 页面中的商品图片及商品名称添加超链接,请参考下图:

点击导航栏菜单中的首页跳转页面
在某个位置点击"首页"链接即可跳转至 Homepage,在此页面中位于 ... 标签处的首页面也需要增加一个超链接指向该主页的位置,请参考下图进行操作


怎样获取到浏览器地址栏中的参数
如何提取网页地址参数?可以通过el表达式的内置属性param来获取该信息如图所示


PageBean中的总页数这个属性,怎么赋值?
PageBean对象中的总页数这个属性是如何赋值的,如下图:

测试
首先进入项目根目录localhost:8080/store,然后点击导航菜单栏中的商品分类名称,并如图所示。

单击分类商品的名称后,在分类商品名称被点击的情况下,系统将导航至/jsp/product_list.jsp页面以呈现分页查询的信息(如图所示)。

该系统中,在/spi/product_list.jsp路径下对商品进行分页展示时,点击任意一个商品链接将成功导向对应的单个商品详情页面/spi/product_info.jsp资源上(如附图所示)。

建议您首先导航至jsp(product_list.jsp)路径指向的分类商品展示页面首页区域,并观察是否存在跳转效果;具体操作步骤可参考下图指导
请查看jsp(product_list.jsp)链接下的分类商品展示页面首页内容,并确认是否能够成功跳转至目标页面,请参考下图进行操作
访问jsp(product_list.jsp)链接对应的分类商品展示页面首页部分,请注意检查是否能够顺利跳转至预期的目标网页,并结合附图理解整个操作流程

跳转成功,如下图:

