请问怎样用jsp或者servlet来统计一个网页的访问量?求指教代码!
访问量作为共享变量,保存在全局共享上下文中。
参考:http://www.educity.cn/develop/web/201305141634191427.htm
为什么不用cnzz这些现成的呢?
就是访问url,和 servlet同名, servlet里可以通过request接收传过来的参数
实现的方法有很多种,最笨的方法是在页面开始的地方加上如下代码逻辑
从数据库中读取访问量,+1,再写回,同时将这个值输出到页面。
为什么这个办法笨,因为每个页面都需要写一次。
因此你可以想到,如果能做成通用的就好了。那么怎么做呢?可以用struts的过滤器来实现,因为过滤器会在页面加载前执行,所以实现了统一处理。
然后你又会发现,这么做,用户每刷新一次,访问量+1,如果一个用户猛按刷新,这么做得到的数据相当于作弊过的。
那么你就考虑,可以使用session,如果统计过访问量,就写入session,这样同一个用户再访问,就不继续累加了。
这么做完美了么?没有,因为这样的效率是很低的。并且如果你有多个应用服务器,还得涉及数据同步。否则可能丢失访问量。
那么可以使用分布式缓存,比如redis等等。
总之,这么一个小需求,你可以从最简单的设计到一个复杂的设计,逐步完善。
这孩子,问百度不就行了么,,jsp+servlet统计网页访问量