亚游,   第一个因为这种网络游戏在意识形态方面还是受到很多争议,对于青少年的教育等等这方面争论很多,这是他的一个焦虑。

  【赛迪网报道】在从最早的单一服务器产品,发展成有软硬产品兼具的解决方案提供商,孙丕恕也曾经感到压力。在2月16日的2006年IT年会上,浪潮集团总裁孙丕恕阐述了公司在软硬件一体化上,如何从企业规模和需求不断扩大下的阻力中解围。笨蛋也能年赚100万  除了防空雷达、之外,空军可能还需要在临沧地区布署机动式防空指挥引导中心,由这个中心来指挥在中缅边境地区的空中作战力量和空中作战行动,一般来说机动式防空指挥引导中心执行上级授权下的防空作战行动,探测空中目标,负责掌握相关地区的空情态势、进行临时管制,下达了防空拦规范作战命令,在执行防空作战之前,飞行员会从防空引导中心接受命令和相关简报,包括当前战区空情信息、防空引导作战预案、战区气象等。然后根据需要执行一级或者不同级别的防空备值班。

发布于 2018-03-23 18:58:33 | 135 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!


这篇文章主要介绍了Servlet实现点击计数器的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

一、Web页面的点击计数器

很多时候,可能有兴趣知道网站的某个特定页面上的总点击量。使用Servlet来计算这些点击量是非常简单的,因为一个Servlet的生命周期是由它运行的容器控制的。

以下是基于Servlet生命周期实现一个简单的页面点击计数器需要的步骤:

  • 在init()方法中初始化一个全局变量。
  • 每次调用doGet()或doPost()方法时,增加全局变量。
  • 如果需要,可以使用一个数据库表来存储destroy()方法中的全局变量。在下次初始化Servlet时,这个值可以在init()方法内被读取。这一步是可选的。
  • 如果想计算一个会话内一个页面的点量击,那么可以使用isNew()方法来查看该会话内是否已点击过相同的页面。这一步是可选的。
  • 可以显示全局计数器的值来显示网站中的总点击量。这一步是可选的。

在这里我假设Web容器不会被重新启动。如果Web容器被重新启动或Servlet被销毁,计数器将被重置。

实例:

这个例子演示了如何实现一个简单的页面点击计数器:


import java.io.*;
import java.sql.Date;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class PageHitCounter extends HttpServlet{  
 private int hitCount;        
 public void init() 
 { 
   /Reset hit counter.
   hitCount = 0;
 } 
 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
 {
   /Set response content type
   response.setContentType("text/html");
   /This method executes whenever the servlet is hit 
   /increment hitCount 
   hitCount++; 
   PrintWriter out = response.getWriter();
   String title = "Total Number of Hits";
   String docType =
   "<!doctype html public \"-/w3c/dtd html 4.0 " +
   "transitional/en\">\n";
   out.println(docType +
    "<html>\n" +
    "<head><title>" + title + "</title></head>\n" +
    "<body bgcolor=\"#f0f0f0\">\n" +
    "<h1 align=\"center\">" + title + "</h1>\n" +
    "<h2 align=\"center\">" + hitCount + "</h2>\n" +
    "</body></html>");
 }
 public void destroy() 
 { 
   /This is optional step but if you like you
   /can write hitCount value in your database.
 } 
} 

现在编译上述Servlet并在web.xml文件中创建以下条目:


....
 <servlet>
   <servlet-name>PageHitCounter</servlet-name>
   <servlet-class>PageHitCounter</servlet-class>
 </servlet>
 <servlet-mapping>
   <servlet-name>PageHitCounter</servlet-name>
   <url-pattern>/PageHitCounter</url-pattern>
 </servlet-mapping>
....

现在使用URL /localhost:8080/PageHitCounter来调用这个Servlet。每次页面刷新时,计数器的值都会加1,这将产生如下所示的结果:

二、网站点击计数器

很多时候,可能有兴趣知道整个网站的总点击量。在Servlet中,这也是非常简单的,可以使用过滤器实现这一点。

以下是实现一个基于过滤器生命周期的简单的网站点击计数器需要的步骤:

  • 在过滤器的init()方法中初始化一个全局变量。
  • 每次调用doFilter方法时,增加全局变量。
  • 如果需要,可以使用一个数据库表来存储过滤器的destroy()方法中的全局变量的值。在下次初始化过滤器时,该值可以在init()方法内被读取。这一步是可选的。

在这里我假设Web容器不会被重新启动。如果Web容器被重新启动或Servlet被销毁,点击计数器将被重置。

实例:

这个例子演示了如何实现一个简单的网站点击计数器:


/Import required java libraries
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
public class SiteHitCounter implements Filter{  
 private int hitCount;        
 public void init(FilterConfig config) throws ServletException{
   /Reset hit counter.
   hitCount = 0;
 }
 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws java.io.IOException, ServletException {
   /increase counter by one
   hitCount++;
   /Print the counter.
   System.out.println("Site visits count :"+ hitCount );
   /Pass request back down the filter chain
   chain.doFilter(request,response);
 }
 public void destroy() 
 { 
   /This is optional step but if you like you
   /can write hitCount value in your database.
 } 
} 

现在来编译上述Servlet并在web.xml文件中创建以下条目:


....
<filter>
  <filter-name>SiteHitCounter</filter-name>
  <filter-class>SiteHitCounter</filter-class>
</filter>
<filter-mapping>
  <filter-name>SiteHitCounter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>
....

现在调用任意URL如URL:/localhost:8080/。每次任意页面被点击时,计数器的值都会加1并且会在日志中显示如下所示的消息:

 测试工程:/github0b0acom/easonjim/5_java_example/tree/master/servletbasics/test14

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHPERZ。



相关阅读 :
亚游Servlet实现点击计数器的方法
Servlet实现点击计数器的方法
亚游Servlet实现点击计数器的方法
jquery实现点击label的同时触发文本框点击事件的方法
JavaScript实现表格点击排序的方法
JS实现在线统计一个页面内鼠标点击次数的方法
用Kotlin实现Android点击事件的方法
用React实现点击切换的标签页
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
Swift在控件中添加点击手势的方法
Android中捕捉menu按键点击事件的方法
QTabWidget标签实现双击关闭的方法(推荐)
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 亚游 All Rights Reserved   冀ICP备14009818号  亚游  广告服务
高通就收购恩智浦半导体重新向中国商务部提出申请 卞相壹天元开局遭扭断 星阵近百手后打破均势 美议员敦促英法德配合制裁伊朗 否则将采取行动 历史悠久!人与马之间从相杀到相爱的演变轨迹 俄军全力打造极地空军基地网:力图掌握北极制空权 阿卡普尔科赛伊斯内尔不敌哈里森 遗憾止步首轮 塔神:鲁能控制了比赛走向 胜利不是我一人的功劳 欧盟高官批特朗普单边主义举动:很难理解难以遵循 美国药物过量致死案上升致意外效果:可供器官增多 最新榜单显示:中国快消品市场被国产品牌占据 兴业投资:日银按兵不动日元暴跌 等候FED决议 超霸战休息日中外大师参观东坡书院 感受中华文化
越南国家主席时隔7年将访印 是否会谈南海问题? 日本右翼分子叫嚣用导弹轰炸中韩 其推特账号被封 沪媒:单靠金软景上海无法夺冠 赛程安排对沪不公 男子不堪电话骚扰 将手机呼叫转移至110被拘(图) 利物浦疯起来全世界都怕!这队上限皇萨仁都得服 上海5G建设迈出关键一步 今起开展外场综合测试 女排二队将战亚洲杯 辽宁四将入选为各队之最 傅政华:新司法部实现立法执法司法守法等职责一体 官员用受贿款购车后变卖 送给情人15万“分手费” 澳网迪米意外陷苦战长盘险胜 克耶高斯亦进32强 外媒头条:特朗普签署钢铝关税法令 加墨暂豁免 日本拟统一男女法定婚龄 女生结婚门槛16升至18岁
特斯拉产能又跳票:造个车怎么就这么难? 巴黎主席向新帅保证:内马尔一定会留下的! 美称中国大量列装单兵激光武器 能让9公里外敌军失明 乐视网子公司乐融致新收到法院传票 美国高级官员挑拨中印敏感点 被印方光速辟谣 山东一落马官员:连198元餐饮发票都让企业报销 苗圩:中国4G用户近10亿 移动流量资费年内降3成以上 曼联大将:穆帅永远可以依靠我 我是他的场上参谋 调查:近4成中小学生要上补习班 年均花费超五千 养一百只土鸡利润多少 马云说未来赚钱的行业 借鸡生蛋生意点子 三缺一棋牌游戏平台 亚游