七、application实现计数器

一、如何统计页面的访问次数?

一个用户多次刷新页面;多个用户访问页面。
需要一个变量count来统计访问次数,那这个变量应该存在哪里呢?request吗?不行,request的作用域仅限于一次请求。session呢?session的作用域是一次会话,但是多个用户没办法解决。我们应该放到多个用户都能访问到的那个作用域,就是application。只要我这个服务器没有关,多个用户都可以共享application。application可在整个项目中共享使用数据,所以可以使用application实现计数器,每次访问该页面,计数器都加1。
application的方法:

public void setAttribute(String name, Object object);
public Object getAttribute(String name);

二、示例

思路:第一次访问该页面时需要创建一个存储访问次数的变量,并将其放入application, 非第一次访问该页面,去application中将记录次数的变量拿出来,+1,再放进application中。


image.png

结果:当运行之后,不断刷新,次数会不断增加;并且当使用其他浏览器访问该页面的时候,次数也会增加。同时,当服务器重启之后,次数才会变为1,重新计数。

三、三个对象的对比

image.png

你可能感兴趣的:(七、application实现计数器)