服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

用servlet实现一个简单的购物车程序


  用servlet实现一个简单的购物车程序

作者:jackliu
e-mail:suntoday@eyou.com

理解servelt的session对象
使用java servlet api的会话对象为每个用户提供了跟踪会话的方式,其中有一种方式的实现是利用

httpsession对象,httpsession对象用来在当前servlet环境中存储会话数据,httpsession对象由

httpsession接口定义,httpsession对象可以使用httpservletrequest对象的getsession()方法获得。

httpsession对象的方法列表:
_________________________________________________________________
方法 描述
long getcreationtime() 返回会话创建时间
string getid() 返回会话id
long getlastaccessedtime() 返回上一次携带这个id的请求时间
void invalidate() 删除当前会话
boolean isnew() 如果会话已创建并未发送到浏览器返回true
string[] getvaluenames() 返回为本次会话存储的所有值的名字数组
object getvalue(string name) 返回给定名字的值
void putvalue(string name,object value) 将一个值增加到会话
void removevalue(string name) 从会话中删除一个条目
int setmaxinactiveinterval(int interval)设置请求之间的会话存活时间
int getmaxinactiveinterval() 返回请求之间的会话存活时间
_________________________________________________________________

购物车样例
假定一个web顾客通过网页访问一个商店的销售商品目录,当看到感兴趣商品后,放到自己的购物车中

,系统应该记录下一个顾客所购买的全部商品清单。
实现这样一个功能的servlet,首先我们需要设计一个web页面,用来列出商店中所有的商品目录:

用servlet实现一个简单的购物车程序
点击查看大图


shop.html文件清单:



下载源程序文件


当顾客点击"buy now"按钮后,将请求提交给一个servlet,servlet程序用来对顾客的操作进行处理,

记录下顾客所购买的商品,并显示出目前顾客将要购买的所有商品清单。
shoppingcart.java



import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;

public class shoppingcart extends httpservlet {
public void dopost(httpservletrequest req,httpservletresponse res) throws

servletexception ,ioexception{

//取得session对象
//如果session不存在,为本次会话创建此对象
httpsession session =req.getsession(true);
integer itemcount=(integer)session.getvalue("itemcount");
//如果session是新的
if (itemcount==null)
itemcount=new integer(0);

printwriter out=res.getwriter();
res.setcontenttype("text/html");

//接收传来的参数
string[] itemsselected;
string itemname;
itemsselected=req.getparametervalues("item");

if(itemsselected !=null){
for(int i=0;i itemname=itemsselected[i];
system.out.println(itemname);
itemcount=new integer(itemcount.intvalue()+1);
//购买的条目
session.putvalue("item"+itemcount,itemname);
//总条目
session.putvalue("itemcount",itemcount);
}
}

out.println("<html>");
out.println("<title>");
out.println("item list");
out.println("</title>");
out.println("<body><hr>session list:</h4><br><br>");
for(int i=1;i<=itemcount.intvalue();i++){
out.println((string)session.getvalue("item"+i)+"<hr>");
}
out.println("</body>");
out.println("</html>");
out.close();
}
}


本例程序实现了一个简单的购物车程序,目的是通过购物车程序让网友了解httpsession类在servlet中

的用法和实现一个购物车的基本思路。

扫描关注微信公众号