Javaweb网上商城项目实战(17)实现商品详情查询

原理分析

具体实现

下面是商品详情页面product_info.jsp显示的样子,我们最初的模板的静态资源已经写死了, 这里我们需要先对这个页面进行改造,使得到时候主页点击商品能输出对应的商品详情页面,具体改造方式在文章后面部分介绍。

修改index.jsp获取商品链接

的href中的地址改为下面的
${pageContext.request.contextPath}/productServlet?method=findProductByPid&pid=${p.pid}

在ProductServlet中增加findProductByPid方法

主要实现以下步骤:

获取商品pid

根据商品pid查询商品信息

将获取到的商品放入request

转发到/jsp/product_info.jsp

具体操作

在ProductService中添加

Product findProductByPid(String pid)throws Exception;

在ProductServiceImp中添加

@Override
public Product findProductByPid(String pid) throws Exception {
	return ProductDao.findProductByPid(pid);
	
}

在ProductDao中添加

Product findProductByPid(String pid)throws Exception;

在ProductDaoImp中添加

@Override
public Product findProductByPid(String pid) throws Exception {
	String sql="select * from product where pid=?";
	QueryRunner qr=new QueryRunner(JDBCUtils.getDataSource());
	return qr.query(sql, new BeanHandler(Product.class),pid);
}

在ProductServlet中编写以下代码

package com.geekerstar.store.web.servlet;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.geekerstar.store.domain.Product;
import com.geekerstar.store.service.ProductService;
import com.geekerstar.store.service.serviceImp.ProductServiceImp;
import com.geekerstar.store.web.base.BaseServlet;

public class ProductServlet extends BaseServlet {
	public String findProductByPid(HttpServletRequest request, HttpServletResponse response) throws Exception {
		//获取商品pid
		String pid=request.getParameter("pid");
		//根据商品pid查询商品信息
		ProductService ProductService=new ProductServiceImp();
		Product product=ProductService.findProductByPid(pid);
		//将获取到的商品放入request
		request.setAttribute("product", product);
		//转发到/jsp/product_info.jsp
		return "/jsp/product_info.jsp";
	}
}

注意:上一节我们已经新建了一个ProductServlet.java,但是我忘了说要到web.xml里进行配置,这里去配置一下。


  
  ProductServlet
  ProductServlet
  com.geekerstar.store.web.servlet.ProductServlet


  ProductServlet
  /ProductServlet

修改product_info.jsp

按照下面的代码进行页面改造

${product.pname}
编号:${product.pid}
商城价: ¥:${product.shop_price}元/份 市场 价: ¥${product.market_price}元/份
促销: 限时抢购
白色
购买数量:
<%--加入到购物车 --%>  收藏商品
商品介绍

${product.pdesc}

效果演示

接下来运行一下项目

点击任意一个商品即可进入商品详情页面。

这一节我们就完成了商品详情查询的功能。

源码下载

[dm href=’https://www.jikewenku.com/product/1700.html’]下载地址[/dm]

导航目录

[dm href=’https://www.jikewenku.com/project/2786.html’]查看导航[/dm]

本站所有文章均由网友分享,仅用于参考学习用,请勿直接转载,如有侵权,请联系网站客服删除相关文章。若由于商用引起版权纠纷,一切责任均由使用者承担
极客文库 » Javaweb网上商城项目实战(17)实现商品详情查询

Leave a Reply

欢迎加入「极客文库」,成为原创作者从这里开始!

立即加入 了解更多