JSP如何实现访问量计数
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关JSP如何实现访问量计数,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。有时要为每一篇文章统计其点击次数,如果每一次浏览都要更新一次库的话
千家信息网最后更新 2026年11月02日JSP如何实现访问量计数
这篇文章将为大家详细讲解有关JSP如何实现访问量计数,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
有时要为每一篇文章统计其点击次数,如果每一次浏览都要更新一次库的话,那性能在访问量很大的情况下,服务器的压力就会很大了,比较好一点的方法就是先将要更新的数据缓存起来,然后每隔一段时间再利用数据库的批量处理,批量更新库。
那么下面本JSP教程提供源码如下:
CountBean.java /* * CountData.java * * Created on 2009年6月30日, 下午4:44 * * To change this template, choose Tools | Options and locate the template under * the Source Creation and Management node. Right-click the template and choose * Open. You can then make changes to the template in the Source Editor. */ package com.tot.count; /** * * */ public class CountBean { private String countType; int countId; /** Creates a new instance of CountData */ public CountBean() {} public void setCountType(String countTypes){ this.countType=countTypes; } public void setCountId(int countIds){ this.countId=countIds; } public String getCountType(){ return countType; } public int getCountId(){ return countId; } } CountCache.java /* * CountCache.java * * Created on 2009年6月30日, 下午5:01 * * To change this template, choose Tools | Options and locate the template under * the Source Creation and Management node. Right-click the template and choose * Open. You can then make changes to the template in the Source Editor. */ package com.tot.count; import java.util.*; /** * * @author http://www.tot.name */ public class CountCache { public static LinkedList list=new LinkedList(); /** Creates a new instance of CountCache */ public CountCache() {} public static void add(CountBean cb){ if(cb!=null){ list.add(cb); } } } CountControl.java /* * CountThread.java * * Created on 2009年6月30日, 下午4:57 * * To change this template, choose Tools | Options and locate the template under * the Source Creation and Management node. Right-click the template and choose * Open. You can then make changes to the template in the Source Editor. */ package com.tot.count; import tot.db.DBUtils; import java.sql.*; /** * * @author http://www.tot.name */ public class CountControl{ private static long lastExecuteTime=0;//上次更新时间 private static long executeSep=60000;//定义更新间隔时间,单位毫秒 /** Creates a new instance of CountThread */ public CountControl() {} public synchronized void executeUpdate(){ Connection conn=null; PreparedStatement ps=null; try{ conn = DBUtils.getConnection(); conn.setAutoCommit(false); ps=conn.prepareStatement("update t_news set hitshits=hits+1 where id=?"); for(int i=0;i﹤CountCache.list.size();i++){ CountBean cb=(CountBean)CountCache.list.getFirst(); CountCache.list.removeFirst(); ps.setInt(1, cb.getCountId()); ps.executeUpdate();⑴ //ps.addBatch();⑵ } //int [] counts = ps.executeBatch();⑶ conn.commit(); }catch(Exception e){ e.printStackTrace(); } finally{ try{ if(ps!=null) { ps.clearParameters(); ps.close(); ps=null; } }catch(SQLException e){} DBUtils.closeConnection(conn); } } public long getLast(){ return lastExecuteTime; } public void run(){ long now = System.currentTimeMillis(); if ((now - lastExecuteTime) ﹥ executeSep) { //System.out.print("lastExecuteTime:"+lastExecuteTime); //System.out.print(" now:"+now+"\n"); // System.out.print(" sep="+(now - lastExecuteTime)+"\n"); lastExecuteTime=now; executeUpdate(); } else{ //System.out.print("wait for "+(now - lastExecuteTime)+" seconds:"+"\n"); } } } //注:如果你的数据库驱动支持批处理,那么可以将⑵,⑶标记的代码前的注释去掉,同时在代码⑴前加上注释 类写好了,下面是在JSP中如下调用。 ﹤% CountBean cb=new CountBean(); cb.setCountId(Integer.parseInt(request.getParameter("cid"))); CountCache.add(cb); out.print(CountCache.list.size()+"﹤br﹥"); CountControl c=new CountControl(); c.run(); out.print(CountCache.list.size()+"﹤br﹥"); %﹥关于"JSP如何实现访问量计数"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
更新
篇文章
访问量
时间
很大
代码
数据
数据库
更多
注释
不错
实用
内容
单位
压力
同时
就是
性能
情况
教程
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
华服互联网科技靠谱吗
互联网科技公司经营范围
互联网科技工作委员会
互联网的科技
互联网金融 科技金融
大白互联网科技
互联网科技有限公司 翻译
衡水科技产业互联网平台
山东吉时兔互联网科技有限公司
茂名市互联网科技产业园
呼和浩特新华互联网科技学院
开一家科技互联网公司需要多少钱
互联网科技和法律行业
富国互联网金融科技混合基金
扫呗互联网科技有限公司
全球科技与互联网公司市值变化
福仕德教育科技互联网
互联网科技的前景
保山浩联互联网科技有限公司
科技互联网企业在行动
互联网科技工作委员会毛军
互联网科技巨头监管
中国互联网科技股
互联网科技公司官网
融贸通互联网科技
须眉科技是互联网公司吗
互联网公司高科技产品
江苏苏星互联网科技有限公司
梅州GM互联网络科技有限公司
杭州披云加互联网科技有限公司