统计访问次数,用servlet的成员变量还是ServletContext好? 请问各位使用java web开发的前辈,servlet的成员变量用于统计servlet的访问次数的时候,与使用ServletContext相比,有什么区别呢?或者换句话说,这两种方式,各有什么优缺点和应用呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用ServletContext好。用Servletcontext对磁盘操作次数非常少,根据servlet的生命周期可以知道用servletContext的话,只需在init的时候把数据读取出来,在destroy的时候把数据存入进去。而如果用servlet的成员变量的对磁盘的操作次数非常多。 入库吧除非你的服务器永久处于运行状态,要不然不管你是用Servlet上下文还是用类成员变量都是浮云!! 不论是用ServletContext还是成员变量,最后统计数据都是需要在destroy()方法中写入数据库的,可是问题是,写入数据库之前,在服务器的内存中,是通过ServletContext来保存还是通过类成员变量来保存更好呢? 入库吧除非你的服务器永久处于运行状态,要不然不管你是用Servlet上下文还是用类成员变量都是浮云!! 全局的信息,到底是用servlet的类变量来储存,还是application来储存比较好,哪位前辈可以给个定论?当然前提是,不管用哪种,在destroy的时候都是会入库的 存servletcontext。至少要定期存库。除非你能保证每次都是正常关闭,要是服务器进程死了,谁来执行destroy方法 小应用直接servlet写数据库稍大的用apache写日志,然后写个服务计算。 肤浅??呵呵。。直接用Servlet成员变量会有线程安全问题,导致在线计数统计不精确。而且计数通常要用long型,那就更夸张了。由于java内部只支持32位的写入,那么写一个long型可能需要两次写入,为了优化可能会启动两个线程。那么会导致取到的long型是随机值。用ServletContext会不会有这个问题不知道。只是成熟的framework,会在变量上加volatile,技术的类型用java.util.concurrent.atomic.AtomicLong; 最后定论貌似大家一边倒的支持用ServletContext了? Telent 请求HTML页面消息头 jspSmartUpload上传下载文件问题 高人来解疑抽象工厂模式 jsp 登陆问题 JSP中如何在点击输入框时弹出日期选择对话框 求JDK1。5的oracle9。2的连接池 在jsp中如何同时显示中文和日文 可不可以下载网站上面的servlet??? NULLpointerException的问题,解决了马上给分!!急!!!! java的学习方法! 中文乱码问题 ztree怎么实现点击右键出现菜单列表?简单例子。
用servletContext的话,只需在init的时候把数据读取出来,在destroy的时候把数据存入进去。而如果用servlet的成员变量的对磁盘的操作次数非常多。
除非你的服务器永久处于运行状态,要不然不管你是用Servlet上下文还是用类成员变量都是浮云!!
除非你的服务器永久处于运行状态,要不然不管你是用Servlet上下文还是用类成员变量都是浮云!!
存servletcontext。
至少要定期存库。除非你能保证每次都是正常关闭,要是服务器进程死了,谁来执行destroy方法
稍大的用apache写日志,然后写个服务计算。