暴风雨来了
2015-01-24 18:49
在同一个detail页面刷新,会出现多个相同的浏览记录

上面说的不通顺:
因为你是通过URL传值的,地址栏../detail.jsp?id=6 ,所以每次request.getParameter("id")都能得到值,而list+=request.getParameter("id")+"," 这样list每次都会加上 6,显示的时候是用list根据这个字符串从数据库中取数据的,所以刷新一次,list增加一次,自然浏览商品增加一个
因为你是通过URL传值的,地址栏../detail.jsp?id=6 ,所以每次request.getParameter("id"),所以
list+=request.getParameter("id")+"," 这样list每次都会加上 6,显示的时候是用list根据这个字符串从数据库中取数据的,所以刷新一次,list增加一次,自然浏览商品增加一个
<%
String list = "";
Cookie[] cookies = request.getCookies();
if(cookies!=null && cookies.length>0){
for(Cookie c:cookies){
if(c.getName().equals("ListViewCookie")){
list=c.getValue();
}
}
}
list+=request.getParameter("id")+ ",";
//如果浏览记录超过1000条,清零
String[] arr = list.split(",");
if(arr!=null && arr.length>0){
if(arr.length>=1000){
list="";
}
}
Cookie cookie = new Cookie("ListViewCookie",list);
response.addCookie(cookie);
%>
有可能添加cookie的时候是把之前的内容替换了。吧jsp页面的代码贴一下吧
JAVA遇见HTML——JSP篇
248272 学习 · 3215 问题
相似问题