不多说散分··
当然··老规矩··顺便问个问题··呵呵·
在看到servlet的时候我发现一个问题··我想不明白一个sevlet的生命周期是由服务器端来决定的还是客户端来决定的?当一个客户端请求服务器端之后··sevlet被运行了··那当客户端关闭浏览器或者关闭请求的时候sevlet是不是就会自动的停止了呢?如果是这样··那如果一个服务器接收到的客户端的请求非常多的时候·也就是servlet过多的时候不是很容易导致服务器崩溃吗?
或许我的问题有点白痴··但是还是虚心请教··顺便给大家散分··年底了··希望大家都有个好收成··
当然··老规矩··顺便问个问题··呵呵·
在看到servlet的时候我发现一个问题··我想不明白一个sevlet的生命周期是由服务器端来决定的还是客户端来决定的?当一个客户端请求服务器端之后··sevlet被运行了··那当客户端关闭浏览器或者关闭请求的时候sevlet是不是就会自动的停止了呢?如果是这样··那如果一个服务器接收到的客户端的请求非常多的时候·也就是servlet过多的时候不是很容易导致服务器崩溃吗?
或许我的问题有点白痴··但是还是虚心请教··顺便给大家散分··年底了··希望大家都有个好收成··
解决方案 »
- 线程队列删除问题
- 怎么用JSP,把一幅已经在上传的彩色图像,转换为灰度图像。。。
- 没有一个程序员能查出的错误???
- 安装jdk1.5出错:提示无法应用转换程序
- 请教?急!!
- 认识java关键字
- 调查,你最喜欢什么java开发工具?jbuilder,intellij idea,jcreator,netbeans,eclipse还是其他的,最好写下喜欢的理由,大家支持下可
- 为什么一直报错说返回一个String
- 如何使用jar文件
- System.in.println( " You can press return to quit\n" );什么意思?
- dom4j 和 org.w3c.dom 哪个更好?
- 基础,看下调用存储过程
no.2 ...
no.3 ....lz 你首先的搞明白servlet的生命周期啊web服务器启动的时候会首先加载并创建servlet接着开始 init() 只初始化一次然后就开始等待客户端的请求 http... get .. post...
接着响应 get / post 请求然后请求完成之后就destroy 释放资源了至于你所说的 “也就是servlet过多的时候不是很容易导致服务器崩溃吗?”
这个基本上不会吧要真是崩溃了 也只能是并发量太大而导致的崩溃
另外servlet都是多线程的, 有web服务器管理。。本人理解的仅此而已:欢迎各位拍砖
初始化、服务和销毁。一个Servlet 在初始化时会执行其init() 方法,在服务
阶段执行serivce() 方法,之后一直常驻内存,直至Web 容器停止才会执行其
destroy() 方法进行对象的销毁工作
初始化、服务和销毁。一个Servlet 在初始化时会执行其init() 方法,在服务
阶段执行serivce() 方法,之后一直常驻内存,直至Web 容器停止才会执行其
destroy() 方法进行对象的销毁工作
Serlvet是单例的,生命周期由WEB容器决定.
单例就是不管多少个线程来访问都是同一个对象,所以,如果在Servlet里使用属性的话,请注意一点,小心同步问题.
在启动的时候不是回创建servlet吗提供给多个线程使用的
但还是那句话一般是很少,,,,,,,,,,,,,,,,
-----
个人理解。
----------
接分。
dopostdoget
请求到达时运行其service方法,
service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,
当服务器决定将实例销毁的时候调用其destroy方法。
与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。
周期为:init()、serivce()、doget()、dopost()、distory()
对应的客户端是applet。希望回答对你有所帮助!