使用cookie保存访问商品记录
一.实体类,数据库连接与释放的相关方法省略
二.dao
//获取最近浏览的前五条商品信息
public ArrayList<Items> getViewList(String list)
{
System.out.println("list:"+list);
ArrayList<Items> itemlist = new ArrayList<Items>();
int iCount=5; //每次返回前五条记录
if(list!=null&&list.length()>0)
{
String[] arr = list.split(",");
System.out.println("arr.length="+arr.length);
//如果商品记录大于等于5条
if(arr.length>=5)
{
for(int i=arr.length-1;i>=arr.length-iCount;i--)
{
itemlist.add(getItemsById(Integer.parseInt(arr[i]))); //获取商品详情的方法省略
}
}
else
{
for(int i=arr.length-1;i>=0;i--)
{
itemlist.add(getItemsById(Integer.parseInt(arr[i]))); //获取商品详情的方法方法省略
}
}
return itemlist;
}
else
{
return null;
}
}
{
System.out.println("list:"+list);
ArrayList<Items> itemlist = new ArrayList<Items>();
int iCount=5; //每次返回前五条记录
if(list!=null&&list.length()>0)
{
String[] arr = list.split(",");
System.out.println("arr.length="+arr.length);
//如果商品记录大于等于5条
if(arr.length>=5)
{
for(int i=arr.length-1;i>=arr.length-iCount;i--)
{
itemlist.add(getItemsById(Integer.parseInt(arr[i]))); //获取商品详情的方法省略
}
}
else
{
for(int i=arr.length-1;i>=0;i--)
{
itemlist.add(getItemsById(Integer.parseInt(arr[i]))); //获取商品详情的方法方法省略
}
}
return itemlist;
}
else
{
return null;
}
}
三.servlet里
/*商品访问记录*/
String num=request.getParameter("id"); //获取商品id
Cookie cookie = (Cookie)session.getAttribute("cookie"); //
if(cookie==null){
cookie = new Cookie("itemid",num);
session.setAttribute("cookie", cookie);
}else{
String id = cookie.getValue()+";"+num;
cookie.setValue(id);
}
List<easybuy_product> eplsit = epdao.getViewList(cookie.getValue()); //获取商品前五条数据
session.setAttribute("eplsit",eplsit);
.......................然后在相应的jsp页面获取.