100分请教一个问题:在JSP的服务器中,被声明为 static 的方法、变量生命周期的问题 各位大虾,在JSP的服务器中,被声明为 static 的方法、变量、(不管有多少个客户端访问)在服务器端是不是只有一个实例运行?还是服务器端为个客户端各生成一个实例运行?小弟现在 也在学JSP,这个问题让各位大虾见笑了。恳望各位大虾指点指点。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 只有一个实例,java和jsp在这方面的行为是一样的 不是,因为整个jsp环境下是一个session,所以最好使用application,response等特定指令 简单来说只有一个;复杂来说也有例外的,3言2语说不清楚,谨慎使用为好,能不用尽量不用;例如采用分布集群服务器咯,服务器不止个ClassLoad什么的 static 的属性和方法属于类对象(class)的东西。所有的对象都共享一份类对象,所以当然只有一个。至于你说的在客户端还是服务器端主要看你拥有static的程序在那里运行,如果是服务器端 当然是在服务器。如果是applet在客户端运行的就肯定是进驻客户端的jvm里了PS: coding中尽量少用static 一是会破坏程序的封装性 二是可能会造成线程冲突。 同意 chnic(挠痒痒) ( ) 同意chinc的看法.主要还是看楼主的static用在什么地方了. 小弟是想用被声明为static的方法来统计访问流量 用不着静态变量吧,声明一个成员级的变量就可以。<%! int i=0; %><% i++; %>不过,webapp重启之后,会重新置成0 to 楼上jsp里强烈不建议使用<%! int i=0; %>你这样会有线程的冲突问题的。如果并发5W个人访问这个页面 你觉得这个i 会是50000么? 各位大哥,我是要用数据库作访问量统计的呀,怎么能用<%! int i=0; %><% i++; %>之类的呢?我将对数据库的操作封装了static类型的方法。 jsp 代码错误 谁帮我看下谢谢!!! 访问servlet...... JAVA开发网站,关于JSESSIONID出现位置的奇怪问题 面试题,求答案!! 程序开发类工作,需要掌握Oracle数据库到何种程度? tomcat中,与oracle连接,需要配置吗? 关于cookie和session的使用! 怎样从网页中抓取内容? 诸位:我想在JSP中编一些组件,请问用什么编写? 求助-struts2在eclipse中的源码调试 编译不通过,请大家帮我看下 用sevrlet编写的创建库的程序,出错(HTTP Status 500),请高手执教
复杂来说也有例外的,3言2语说不清楚,谨慎使用为好,能不用尽量不用;
例如采用分布集群服务器咯,服务器不止个ClassLoad什么的
所有的对象都共享一份类对象,所以当然只有一个。
至于你说的在客户端还是服务器端主要看你拥有static的程序在那里运行,
如果是服务器端 当然是在服务器。如果是applet在客户端运行的就肯定是进驻客户端的jvm里了
PS: coding中尽量少用static 一是会破坏程序的封装性 二是可能会造成线程冲突。
<% i++; %>不过,webapp重启之后,会重新置成0
你这样会有线程的冲突问题的。
如果并发5W个人访问这个页面 你觉得这个i 会是50000么?
<%! int i=0; %>
<% i++; %>
之类的呢?
我将对数据库的操作封装了static类型的方法。