码迷,mamicode.com
首页 > 其他好文 > 详细

解决刷新使得点击数多次变化问题

时间:2014-05-08 20:00:20      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:style   blog   class   code   java   ext   

利用token构想,

首先在jsp页面定义token字符串,在客户端和服务器最开始的时候都是一样的,然后通过servlet处理判断它们相同的话 就更新,然后删除服务器端的token。 以后每次刷新进入servlet的时候 服务器的token不存在所以 不继续增加点击数了。

在外面页面定义

bubuko.com,布布扣
 1         <%
 2             //最开始进入的时候服务器和客户端都是相同的tokens,在servlet处理之后 服务器的tokens被删除了
 3             //所以接下来服务器和客户端 tokens匹配就不一样了,所以只刷新一次
 4             String token=WebUtil.getRandomValue();
 5             session.setAttribute("token", token);
 6         %>
 7 
 8  <a href ="${pageContext.request.contextPath}/BbsServlet?method=findAllTopicByTypeId&typ 9  eId=${type.id}&token=${token}" style="text-decoration:none">${type.name}</a>
              <td>${type.click}</td>    //点击数
bubuko.com,布布扣

 

在servlet端

bubuko.com,布布扣
 1             int typeId=Integer.parseInt(request.getParameter("typeId"));
 2             
 3             
 4             //表单重复提交 多次刷新 问题
 5             //客户端和服务器端口的token 在 listAll中 放了的
 6             String tokenClient=request.getParameter("token");
 7             String tokenServer=(String) request.getSession().getAttribute("token");
 8             if(null!=tokenClient&&null!=tokenServer&&tokenClient.equals(tokenServer))
 9             {
10                 bbsService.updateClickByTypeId(typeId);    //向数据库中点击数+1
11                 request.getSession().removeAttribute("token");
12             }
13             
bubuko.com,布布扣

 

 

解决刷新使得点击数多次变化问题,布布扣,bubuko.com

解决刷新使得点击数多次变化问题

标签:style   blog   class   code   java   ext   

原文地址:http://www.cnblogs.com/friends-wf/p/3709493.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!