展示全部商品功能的实现

来源:互联网 发布:淘宝客服标准用语 编辑:程序博客网 时间:2024/05/03 19:04

Jsp框架:

一、1.商品缩略图2.商品价格,库存,种类;3.显示有货或无货状态;

二、展示页面分为三块,将商品缩略图划分为20%;商品价格,库存,种类宽度为40%,有货无货占40%

三、因为使用到<c:forEach标签,引入jstl包和前缀:

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

代码:

<table width="100%" style="text-align:center">

<c:forEach items="${list}" var="prod">

<tr>

<td width="20%">

<a href="${pageContext.request.contextPath}/ProdInfoServlet?id=${prod.id}">

<img src="${pageContext.request.contextPath}/ImgServlet?id=${prod.id}&type=s"/>

</a>

</td>

<td width="40%">

${prod.name}<br/>

${prod.price}<br/>

${prod.category}<br/>

</td>

<td width="40%">

<--当商品库存大于0时,有货,小于等于0时,无货-->

 

<c:if test="${prod.pnum>0 }"><font color="blue">有货</font></c:if>

<c:if test="${prod.pnum<=0 }"><font color="red">无货</font></c:if>

</td>

</tr>

</c:forEach>

</table>

Servlet相关操作:

ProdInfoServlet

//获取ProdService

ProdService service = (ProdService) BasicFactory.getFactory().getInstance("ProdService");  

//获取传入的商品id

String id=request.getParameter("id");

//获取商品

Prod prod =service.findProdById(Integer.valueOf(id));

//如果商品是空的,则返回,没有对象

if(prod==null){

throw new RuntimeException("当前没有对象");

}else{

//将找到的商品放到请求中

request.setAttribute("prod",prod);

//获取请求后,转发到文件详细页面

request.getRequestDispatcher("/prodInfo.jsp").forward(request,response);

}

 

Dao相关操作:

public Prod findProdById(Integerid) {

//定义sql语句

String sql = "select * from products where id=?";

//获取连接

QueryRunner runner = new QueryRunner(DaoUtils.getSource());

try {

Prod prod=runner.query(sql,new BeanHandler<Prod>(Prod.class),id);

return prod;

} catch (SQLExceptione) {

// TODO Auto-generated catch block

e.printStackTrace();

throw new RuntimeException(e);

}

 

}


0 0
原创粉丝点击