JSP防止恶意刷新点击数

CoffeePhoton 2011-02-26 01:02:25
如题,怎么避免每篇文章不被恶意刷新导致点击数异常暴涨?

打算2小时内,重复刷新页面无效,不会增加点击数,貌似session可以实现,求具体解决方法
...全文
161 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
CoffeePhoton 2011-02-26
  • 打赏
  • 举报
回复
自己尝试写了个:




public void doModifyClickRate(HttpServletRequest request, String articleId){
int markArticleId = 1;
List list = (List) request.getSession().getAttribute("articleId");
if(list == null){
list = new ArrayList();
list.add(articleId);
IArticleService.modifyClickRate(articleId);
}else{
for(int i = 0; i < list.size(); i++){
if(articleId.equals(list.get(i))){
markArticleId = 2;
break;
}
}
//不是同一文章点击数增加1
if(markArticleId != 2){
list.add(articleId);
IArticleService.modifyClickRate(articleId);
}
}
request.getSession().setAttribute("articleId", list);
}

大马打马 2011-02-26
  • 打赏
  • 举报
回复
定义一个变量,赋个值1 用SESSION保存这个 然后用个判断这个值 是否是1 如果是把这个值加1 在把点击数加1,就行了
java_web_hack3 2011-02-26
  • 打赏
  • 举报
回复
用cookie吧。把用户点击时间写入到cookie中去。

然后。点击的时候。先判断cookie。。。
zl_love_IT 2011-02-26
  • 打赏
  • 举报
回复
将session的会话事件改成两小时,在web.xml中加入修改,session本身有默认时间
ifengshow 2011-02-26
  • 打赏
  • 举报
回复
用只会asp,PHP

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧