如题,怎么避免每篇文章不被恶意刷新导致点击数异常暴涨?打算2小时内,重复刷新页面无效,不会增加点击数,貌似session可以实现,求具体解决方法

解决方案 »

  1.   

    将session的会话事件改成两小时,在web.xml中加入修改,session本身有默认时间
      

  2.   

    用cookie吧。把用户点击时间写入到cookie中去。然后。点击的时候。先判断cookie
      

  3.   

    定义一个变量,赋个值1 用SESSION保存这个  然后用个判断这个值 是否是1 如果是把这个值加1 在把点击数加1,就行了
      

  4.   

    自己尝试写了个:
    public void doModifyClickRate(HttpServletRequest request, String articleId){
    int ArticleId = 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))){
    ArticleId = 2;
    break;
    }
    }
    //不是同一文章点击数增加1
    if(ArticleId != 2){
    list.add(articleId);
    IArticleService.modifyClickRate(articleId);
    }
    }
    request.getSession().setAttribute("articleId", list);
    }