JSP购物车实例Word文件下载.docx

上传人:b****6 文档编号:19324841 上传时间:2023-01-05 格式:DOCX 页数:22 大小:21.66KB
下载 相关 举报
JSP购物车实例Word文件下载.docx_第1页
第1页 / 共22页
JSP购物车实例Word文件下载.docx_第2页
第2页 / 共22页
JSP购物车实例Word文件下载.docx_第3页
第3页 / 共22页
JSP购物车实例Word文件下载.docx_第4页
第4页 / 共22页
JSP购物车实例Word文件下载.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

JSP购物车实例Word文件下载.docx

《JSP购物车实例Word文件下载.docx》由会员分享,可在线阅读,更多相关《JSP购物车实例Word文件下载.docx(22页珍藏版)》请在冰豆网上搜索。

JSP购物车实例Word文件下载.docx

packagejavabean;

import;

importjava.sql.*;

publicclassGoods

{

privateStringgoodsid;

privateStringgoodsname;

privatefloatprice;

// 

物品编号

publicvoidsetGoodsid(Stringgoodsid)

{

this.goodsid=goodsid;

}

publicStringgetGoodsid()

returngoodsid;

物品名称

publicvoidsetGoodsname(Stringgoodsname)

this.goodsname=goodsname;

publicStringgetGoodsname()

returngoodsname;

物品价格

publicvoidsetPrice(floatprice)

this.price=price;

publicfloatgetPrice()

returnprice;

publicArrayListgetGoodsByPage(intpageNo){

intnumber=10;

每一页显示的记录数

intbegin=(pageNo*number)-9;

intend=pageNo*number;

intindex=1;

DBBeandb=newDBBean();

要返回的结果对象

ArrayListgoods=newArrayList();

Stringsql="

select*fromgoods"

;

ResultSetrs;

try{

rs=db.executeQuery(sql,null);

while(rs.next()){

在begin之前的记录是不显示的

if(index<

begin){

index++;

continue;

在end之后的记录也不显示

if(index>

end)

break;

Stringgoodsid=rs.getString

(1);

Stringgoodsname=rs.getString

(2);

floatprice=rs.getFloat(3);

Goodsg=newGoods();

g.setGoodsid(goodsid);

g.setGoodsname(goodsname);

g.setPrice(price);

goods.add(g);

}catch(Exceptione){

e.printStackTrace();

}finally{

db.close();

returngoods;

publicGoodsfindGoodsById(Stringgoodsid)

try{

 

编写查询数据库信息的SQL语句

select*fromgoodswheregoodsid=?

"

ArrayListparams=newArrayList();

params.add(goodsid);

ResultSetrs=db.executeQuery(sql,params);

if(rs.next())

//Stringgoodsid=rs.getString

(1);

Goodstemp=newGoods();

temp.setGoodsid(goodsid);

temp.setGoodsname(goodsname);

temp.setPrice(price);

returntemp;

}else{

returnnull;

}catch(Exceptione){

returnnull;

publicintgetPageCount(){

selectcount(*)fromgoods"

ResultSetrs=db.executeQuery(sql,null);

intnumber=0;

number=rs.getInt

(1);

return(number-1)/10+1;

return0;

}

2.2Item类

//购物项

publicclassItem

privateGoodsgoods;

privateintquantity;

publicItem(Goodsd,intquantity)

this.goods=d;

this.quantity=quantity;

publicvoidsetGoods(Goodsgoods){

this.goods=goods;

publicGoodsgetGoods()

publicvoidsetQuantity(intquantity)

publicintgetQuantity()

returnquantity;

3、 

物品信息显示功能

采用MVC模式,考虑视图部分,不需要输入界面,只需要显示信息的界面。

模型部分,在前面的代码中已经实现。

控制器部分,需要编写GetAllGoods.java。

参考代码分别如下:

3.1界面代码

文件名:

goodslist.jsp

<

%@pagecontentType="

text/html;

charset=gb2312"

%>

%@taglibprefix="

c"

uri="

/jstl/core"

c:

iftest="

${pageNo!

=1}"

>

<

ahref="

getAllGoods?

pageNo=1"

第一页<

/a>

pageNo=${pageNo-1}"

上一页<

/c:

if>

=pageCounter}"

pageNo=${pageNo+1}"

下一页<

pageNo=${pageCounter}"

最后一页<

br>

tablewidth="

200"

border="

1"

height="

56"

tbody>

tr>

td>

/td>

/tr>

forEachvar="

g"

items="

${goods}"

${g.goodsid}

${g.goodsname}

${g.price}

addToCart?

goodsid=${g.goodsid}"

添加到购物车<

forEach>

/tbody>

/table>

3.2控制器代

packageservlet;

importjava.io.*;

importjavax.servlet.*;

importjavabean.*;

importjava.util.*;

publicclassGetAllGoodsextendsHttpServlet

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsIOException,ServletException

//response.setContentType("

);

//PrintWriterout=response.getWriter();

第一步:

获取用户的输入信息

StringpageNo=request.getParameter("

pageNo"

intiPageNo=1;

if(pageNo!

=null)

iPageNo=Integer.parseInt(pageNo);

第二步:

调用JavaBean

ArrayListgoods=null;

goods=g.getGoodsByPage(iPageNo);

intpageCount=g.getPageCount();

//out.println("

记录数:

+users.size());

当前页码:

+iPageNo);

总页码:

+pageCount);

第三步:

传值

request.setAttribute("

goods"

goods);

newInteger(iPageNo));

pageCounter"

newInteger(pageCount));

第四步:

选择一个界面对用户进行响应

Stringforward="

goodslist.jsp"

RequestDispatcherrd=request.getRequestDispatcher(forward);

rd.forward(request,response);

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)

doGet(request,response);

4、 

显示购物车中信息

该功能直接从session中获取购物车信息,所以不需要控制器和模型部分,只需要编写显示购物车信息的JSP文件即可,文件名为cart.jsp,参考代码如下:

购物车中的信息<

tableborder=1>

物品编号<

物品名称<

价格<

数量<

item"

${cart}"

${

${item.quantity}<

5、 

向购物车中添加物品

采用MVC模式。

首先考虑输入和输出,添加物品的输入就是物品信息列表界面,输出应该是添加后的购物车信息界面(也可以重新回到物品信息界面),这两个界面都不需要编写。

考虑模型部分,需要编写购物车管理JavaBean,完成处理。

考虑控制器部分,需要获取用户选择的物品,然后添加到调用购物车管理Bean,完成添加。

下面是参考代码。

5.1模型部分

文件名CartManager.java

publicclassCartManager

表示购物车

privateArrayListcart;

publicvoidsetCart(ArrayListcart)

this.cart=cart;

publicArrayListgetCart()

returncart;

添加的物品&数量

publicArrayListaddToCart(Goodsg,intquantity)

if(cart==null){

实例化购物车对象

cart=newArrayList();

添加到购物车

Itemitem=newItem(g,quantity);

cart.add(item);

else

转换成数组

Objectitems[]=cart.toArray();

booleanfind=false;

表示是否查找到

for(inti=0;

i<

items.length;

i++)

Itemtemp=(Item)items[i];

判断购物车中是否存在要添加的物品

if(temp.getGoods().getGoodsid().equals(g.getGoodsid()))

temp.setQuantity(temp.getQuantity()+quantity);

find=true;

if(!

find)

5.2控制器部分

AddToCart.java

import

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1