15. Servlet入门 - 统计网站被访问的总次数

27 篇文章 8 订阅
订阅专栏

15. Servlet入门 - 统计网站被访问的总次数

需求

  • 在页面中显示您是第x位访问的用户.

思路分析

abb8c3ed00450bef66700e32728224cf.png
image-20191208160926430

代码实现

1.CountServlet 实现 count 总次数在 ServletContext 的 计数

27506aeff26d4671d4e12b6e887c3818.png

@WebServlet(name = "CountServlet", value = "/count")
public class CountServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1. 读取Servlet中的count参数
        ServletContext servletContext = getServletContext();
        Object count = servletContext.getAttribute("count");

        //2. 判断count参数是否存在,如果不存在,则初始化,设置为0;反之,加 1
        if (count == null) {
            count = 0;
            servletContext.setAttribute("count", count);
        }

        int number = (int) count + 1;
        System.out.println("number: " + number);
        servletContext.setAttribute("count", number);

        //3.返回浏览器 Welcome
        response.getWriter().write("Welcome...." + number);
    }
}

启动 tomcat 服务,访问测试如下:

http://localhost:8080/demo01/count

7cf388258348b6a10c2afaf770e22b66.png

2.ShowServlet 实现读取 ServletContext 的 count 总计数

0150481fb9f9e56d0e4107544d6bed36.png

@WebServlet(name = "ShowServlet", value = "/show")
public class ShowServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        // 1. 读取ServletContext中的count总次数
        ServletContext servletContext = getServletContext();
        int count = (int)servletContext.getAttribute("count");

        // 2. 返回浏览器访问的总次数
        response.setContentType("text/html; charset=UTF-8"); // 设置浏览器以utf8编码格式,不然中文显示为乱码
        response.getWriter().print("您是第 " + count + "  位访问的用户");
    }
}

访问 http://localhost:8080/demo01/show 测试如下:

a02b1ee884c18100d2cb3f3afa1e6693.png

编写一个Servlet程序,可显示该Servlet访问次数
m0_54966151的博客
10-12 1015
编写一个Servlet程序,可显示该Servlet访问次数
ServletContext对象统计网站访问
qq_37244548的博客
08-04 469
import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; imp.
统计网站访问次数
05-24
统计网站访问次数
javax.servlet-api-3.0.1.jar中文文档.zip
03-01
注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】 jar包下载地址:【javax.servlet-api-***.jar下载地址(官方地址+国内镜像地址).txt】 Maven依赖:【javax.servlet-api-***.jar Maven依赖信息(可用于项目pom.xml).txt】 Gradle依赖:【javax.servlet-api-***.jar Gradle依赖信息(可用于项目build.gradle).txt】 源代码下载地址:【javax.servlet-api-***-sources.jar下载地址(官方地址+国内镜像地址).txt】 # 本文件关键字: javax.servlet-api-***.jar中文文档.zip,java,javax.servlet-api-***.jar,javax.servlet,javax.servlet-api,***,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,javax,servlet,api,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压 【javax.servlet-api-***.jar中文文档.zip】,再解压其中的 【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件; # Maven依赖: ``` <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>***</version> </dependency> ``` # Gradle依赖: ``` Gradle: implementation group: 'javax.servlet', name: 'javax.servlet-api', version: '***' Gradle (Short): implementation 'javax.servlet:javax.servlet-api:***' Gradle (Kotlin): implementation("javax.servlet:javax.servlet-api:***") ``` # 含有的 Java package(包): ``` javax.servlet javax.servlet.annotation javax.servlet.descriptor javax.servlet.http ``` # 含有的 Java class(类)(此处仅列举3个): ``` javax.servlet.AsyncContext javax.servlet.AsyncEvent javax.servlet.AsyncListener ...... ```
servlet记录用户访问次数
Gamedev
05-24 8035
servlet记录用户访问次数网站的计数器功能,浏览者每访问一次网站,计数器就累加一次。实现计数器主要是在servlet中应用ServletContext接口,Servlet容器在启动一个Web应用时,会为它创建一个ServletContext对象。当Servlet容器终止一个Web应用时,ServletContext对象也会被销毁,所以该对象与Web应用程序有同样的生命周期。也就是说,整个Web
用php统计日月年点击量文件_PHP实现网站访问量计数器
weixin_36160268的博客
03-09 238
简单的网站访问量计数器实现,具体如下首先说明思路:1.用户向服务器发出访问请求2.服务器读取访问次数文件,+1,向客户端返回3.服务器保存新的浏览次数4.新用户访问,重复123即可解决方案(主要算法):1.数据文件:counter.dat2.读出数据文件打开文件;如果不存在,创建,并以0为初识数据;否则,读出数据;关闭文件。3.把累加后的数据写入文件counter.dat累加数据;打开文件;写入数...
网站计数器(ServletContext实现)
weixin_30813225的博客
07-06 250
网站计数器是针对所有用户的,因此可以考虑如下方法: 1、将用户访问次数,存放到数据库中的一个统计表中,每有一个用户访问,数据库中就加1。 优点:容易理解,方便实现。 缺点:对数据库访问太频繁,服务器压力大(如果访问用户太多)。 2、设置一个静态变量,但服务器启动时,可以通过配置文件或表初始化该变量,当服务器关闭时,再将变量的值写入到文件或者数据库中。 优点:效...
JSP实现web网页访问次数
03-28
JSP实现web网页访问次数,自己做得一个Demo,运行没问题。
Servletcontext的应用---统计网站访问次数
liuzhenghui666666的博客
07-02 467
package lzh; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http....
通过servletContext来统计网站访问次数
10-11 275
package cn.com.feng.task1; import java.io.IOException;import java.io.PrintWriter; import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;impo...
javax.servlet-api-3.1.0.jar中文文档.zip
03-01
javax.servlet-api-***.jar中文文档.zip,java,javax.servlet-api-***.jar,javax.servlet,javax.servlet-api,***,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,javax,servlet,api,中文API文档,手册,开发...
jakarta.servlet-api-4.0.4-API文档-中文版.zip
05-09
赠送jar包:jakarta.servlet-api-4.0.4.jar; 赠送原API文档:jakarta.servlet-api-4.0.4-javadoc.jar; 赠送源代码:jakarta.servlet-api-4.0.4-sources.jar; 赠送Maven依赖信息文件:jakarta.servlet-api-4.0.4....
javax.servlet-3.0.0.v201112011016-API文档-中文版.zip
06-04
赠送jar包:javax.servlet-3.0.0.v201112011016.jar; 赠送原API文档:javax.servlet-3.0.0.v201112011016-javadoc.jar; 赠送源代码:javax.servlet-3.0.0.v201112011016-sources.jar; 赠送Maven依赖信息文件:...
javax.servlet-api-4.0.1-API文档-中英对照版.zip
05-03
赠送jar包:javax.servlet-api-4.0.1.jar; 赠送原API文档:javax.servlet-api-4.0.1-javadoc.jar; 赠送源代码:javax.servlet-api-4.0.1-sources.jar; 赠送Maven依赖信息文件:javax.servlet-api-4.0.1.pom; ...
编写一个servlet,实现统计网站访问次数
lmhnba的博客
09-27 3956
package cn.itcast.servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax
Django开发网页计数器统计页面浏览次数
菲宇运维
04-10 1891
实际Web开发过程中,我们经常要统计并显示一个页面的浏览次数。今天我们会以博客的例子,教你如何利用Django开发网页计数器,统计并显示一篇文章的浏览次数。本文的原理可以适用于很多场景,比如统计某一文件的下载次数统计某一用户在单位时间内的登录次数。本文使用Django 2.0 + Python 3.X实现。 第一步 建立APP,设置URL 我们创建一个叫demo的项目,并利用python m...
web中ServletContext对象统计网页访问次数
chirp_CQ的博客
03-30 2723
在学习web后端的过程中 对该对象访问次数统计的思考 先创建Web Dymanic Project 参考 这篇文章的作者只是把打码内容给直接粘贴了出来,可能对于部分人来说不知道是如何构建的 https://blog.csdn.net/Tommy5553/article/details/85237082 ...
编写一个servlet,实现统计网站访问次数的功能
Queen_kiss的博客
10-29 2832
编写一个servlet,实现统计网站访问次数的功能 package ch5; import java.io.*; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.Serv
servlet实现网站计数器
liangzhu3065的专栏
08-04 1128
利用servlet的生命周期init()和destory()方法,对每一个Servlet实例,init()方法只被调用一次,在此方法中添加网页计数器功能。 public void init(){ try{ //只会被调用一次,可以用来作为网页计数器 FileReader fr=new FileReader("f:\\2.txt"); BufferedReader br=n
javax/servlet/javax.servlet-api/4.0.1/javax.servlet-api-4.0.1.jar!/javax/ser
最新发布
09-05
javax.servlet-api/4.0.1/javax.servlet-api-4.0.1.jar是Java Servlet API的一个版本,它提供了一组用于开发Java Web应用程序的类和接口。Java Servlet是一个在Web服务器上运行的Java程序,用于接收和响应客户端请求...

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • excel如何快速自动填充空白单元格上一行的内容 26235
  • css3背景颜色渐变属性(Gradients) 25271
  • excel表格中经纬度格式转换的公式 24464
  • excel IF公式判断两列是否相同 22734
  • 韩顺平_JAVA_视频教程_下载(打开迅雷,直接复制链接地址即可下载) 21378

分类专栏

  • Gradle系列 12篇
  • RabbitMQ系列 18篇
  • JDBC系列 12篇
  • Celery系列 10篇
  • Flask系列 26篇
  • InfluxDB系列 15篇
  • SpringBoot系列 25篇
  • Java JUC 并发编程 14篇
  • JavaWeb基础 27篇
  • 人生百态 1篇
  • java连接池 4篇
  • Go基础 33篇
  • MyBatis系列 11篇
  • Mysql系列 22篇
  • 移动端库和框架 1篇
  • Selenium系列 2篇
  • Ansible系列 4篇
  • Centos7系列 16篇
  • 监控系列 3篇
  • Git系列 7篇
  • Python系列 42篇
  • Django系列 26篇
  • JQuery系列 39篇
  • JavaScript系列 20篇
  • 软件测试 2篇
  • java 13篇
  • QTP 1篇
  • linux 3篇
  • j2ee 1篇
  • oracle 3篇
  • 性能测试 1篇
  • excel 11篇
  • 系统运维 4篇
  • 产品需求 2篇
  • CCNA/CCNP/CCIE 1篇
  • sqlserver 2篇

最新评论

  • 去大厂还是小厂,这个还用问?看看大厂的工作与小厂有什么不同!

    「已注销」: 不管进厂还是创业,要走出门和人交流才是真道理。表情包

  • Python 使用 logging模块打印日志

    是晨星啊: 建议加上编码 fh = logging.FileHandler(logfile, mode='a', encoding='utf8')

  • 14-SpringBoot自动配置-Condition

    代码拯救不了世界: 你这里面先贴了代码的截图,然后又把代码复制上去了,不是有点多此一举吗,要是截图就截图呗,要是代码块就代码块呗,留一个就可以了,看半天文章一半都是重复的

  • Flask app的run配置IP\PORT远程访问

    永远微笑的凯神: 我就在本机上运行的

  • Flask app的run配置IP\PORT远程访问

    永远微笑的凯神: 不行,0.0.0.0还是只能127.0.0.1访问

大家在看

  • 出吉林大学计算机考研资料适用于计专966/计学941/软专967
  • 6_1、C++:类与对象基本介绍
  • 人工智能在消化道肿瘤中的最新研究【24年五月|顶刊速递·05-31】 496
  • 灵动神韵,B 端系统 UI 绽放绚丽光彩
  • C++分数计算 125

最新文章

  • 3.Gin 框架中的路由简要说明
  • 1.Gin 介绍
  • 5.Gin 静态文件服务
2023年27篇
2022年55篇
2021年128篇
2020年177篇
2019年344篇
2018年96篇
2016年1篇
2015年6篇
2014年18篇
2013年11篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海洋的渔夫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司思茅网站推广方案报价潜江SEO按效果付费报价惠州推广网站价格福永seo多少钱重庆网站定制哪家好北海网站优化软件哪家好商丘网站优化推广推荐廊坊外贸网站设计多少钱怀化网站推广系统大浪网站优化按天计费推荐永湖如何制作网站渭南网站优化推广哪家好永新网站优化按天收费公司自贡seo排名哪家好包头seo网站优化公司杭州模板网站建设哪家好思茅网站优化按天收费报价昆明网站推广价格吉祥网站定制报价南澳网络营销推荐桂林网站设计价格绥化英文网站建设多少钱吕梁至尊标王公司东营百度seo推荐坂田优秀网站设计推荐安顺建网站安庆SEO按天收费哪家好伊春企业网站制作哪家好天门网络营销推荐晋中网络推广多少钱歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化