使用cookies查询商品浏览记录

经历了俩个星期,易买网项目如期完工,现在总结一下如何使用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);

%>

这样就实现了商品的浏览记录。

时间: 2024-12-07 05:08:06

使用cookies查询商品浏览记录的相关文章

Java遇见HTML——JSP篇之商品浏览记录的实现

一.项目总体介绍 使用Cookie实现商品浏览记录. 要实现这个程序采取的是Model1(Jsp+JavaBean)架构实现,具体步骤: 首先要有个数据库,商品表,操作数据库的一个类DBHelper类 创建实体类(与数据库表一一对应) 创建业务逻辑类(DAO) 创建页面层 二.DBHelper类设计 1 package util; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 6 public class D

使用cookies查询商品详情

易买网项目完工,把一些新知识记录下来,以便以后查阅,也方便他人借阅.介绍使用cookies查询商品详情. 第一步:建立商品实体类. 第二步:连接Oracle数据库. 第三步:使用三层架构. 效果图如下: 当我看中新疆牛肉干,商品点击时,进入查看商品详情页. 商品详情页: 核心代码如下: <% //创建商品业务逻辑对象 productBiz prodctbiz = new productBizImpl(); List<easybuy_product> productlist = prodc

(JS实现顾客商品浏览记录以及购物车)Cookie的保存与删除

//JS实现顾客浏览商品的记录以及实现购物车的功能function setCookie(name,value) { var Days = 30; var exp = new Date(); exp.setTime(exp.getTime() + Days*24*60*60*1000); //在最后追加 ;path=/ 非常有必要.否则容易出现 在不同的目录下,调用同一个js方法来存储Cookie,到别的目录取不出或取出的值是不对的这种情况 document.cookie = name + "=&

PHPCMS 商品浏览记录及其遇到的问题

使用cookie   function _setHistory($data) {     if(!$data || !is_array($data))     {         return false;     }     //判断cookie类里面是否有浏览记录     if($_COOKIE["_productHistory"])     {         $history = unserialize(stripslashes($_COOKIE['_productHistor

javaWeb 使用cookie显示商品浏览记录

package de.bvb.cookie; import java.io.IOException; import java.io.PrintWriter; import java.util.Date; import java.util.LinkedHashMap; import java.util.Map; import java.util.Map.Entry; import javax.servlet.ServletException; import javax.servlet.http.C

jsp写商品显示信息和cookie浏览记录,网上看到的好东西,记录一下。

这是本次项目结果,商品展示页面和浏览历史记录页面. 1,先从数据库入手:创建商品数据库. CREATE TABLE `items` (   `id` int(11) NOT NULL auto_increment,   `name` varchar(50) default NULL,   `city` varchar(50) default NULL,   `price` int(11) default NULL,   `number` int(11) default NULL,   `pict

使用Cookie实现商品的浏览记录功能

之前在前面一篇文章中简单的介绍了一下Cookie的来历与简单的用法,以及与Session两者之间的区别,然而理论终究还是要与实践相结合的,有了实践,理论才能得以更好的巩固.尤其是编程这种技术性操作性及其强的工作,更需要不断的去实践. 像很多购物网站.淘宝,京东等购物网站,细心的朋友都会发现页面的一侧都会有那种浏览过的商品历史记录信息,之前也只是听说这个是使用cookie机制实现的,但是具体怎么实现的还不是很清楚,通过这两天的学习,终于也大致清楚这其中的奥秘,好了,废话不多说了,这两天练习了一个小

java cookie记录最近浏览商品记录(取最新的五个浏览记录)

//商品浏览详细信息记录商品id,存到cookie中 package com.kt.servlet_qt; import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; import javax.servlet.ServletException; im

商品的浏览记录

原理:把点击过的商品的goods_id放入 cook==1,2,4,3,5 ; 从数据库查询商品id在1,2,4,3,5中的商品分配到模版页如果cook没有设置cook如果有追加,去重,如果大于5,pop 1 session_start(); 3 //商品的浏览记录 4 $goods_id=mt_rand(1,10); 5 if(empty($_COOKIE['user']['history'])){ 6 setcookie('user[history]',$goods_id,time()+36