您的位置:首页 > 其它

使用cookies查询商品浏览记录

2015-06-15 17:18 459 查看
经历了俩个星期,易买网项目如期完工,现在总结一下如何使用cookies实现浏览商品的历史记录。

第一步:创建商品实体类。

第二步:连接oracle数据库。

第三步:创建商品三层架构。

效果图:



在要显示 的地方加入核心代码:

<h2>最近浏览</h2>
<div style="height:200px;display:block;overflow:hidden">
<%    //获取所有的cookie
Cookie[] cookies = request.getCookies();

//筛选cookie
if(cookies != null && cookies.length>0){
for(int j = cookies.length-1; j>=0; j--){
String cookieName = cookies[j].getName();
if(cookieName.startsWith("product-view")){

//调用查询商品的方法
List<easybuy_product> list4 = productbiz.product(cookies[j].getValue());
request.setAttribute("list4",list4);

%>
<c:forEach var="hao" items="${requestScope.list4}" >
<dl class="clearfix">
<dt><img src="${hao.ep_file_name}" width="50px"/></dt>
<dd><a href="addcookie?id=${hao.ep_id}" target="_blank">${hao.ep_name}</a></dd>

</dl>
</c:forEach>
<%}}}%>
</div>


点击跳转查看商品详细页代码如下:

<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
//获取商品id
request.setCharacterEncoding("utf-8");
String book = request.getParameter("id");
Cookie[] cookies = request.getCookies();
List<Cookie> cookieList = new ArrayList<Cookie>();
Cookie tempCookie =null;

//筛选cookie
if(cookies != null && cookies.length>0){
for(Cookie c:cookies){
String cookieName = c.getName();
if(cookieName.startsWith("product-view")){
cookieList.add(c);
}

if(c.getValue().equals(book)){
tempCookie = c;
}
}
}

if(cookieList.size()>=10 && tempCookie==null){
tempCookie = cookieList.get(0);
}

Cookie cookie = new Cookie("product-view"+book,book);
response.addCookie(cookie);

%>


这样就实现了商品的浏览记录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: