只需要创建Servlet的实例一次怎么理解

只需要创建Servlet的实例一次怎么理解?... 只需要创建Servlet的实例一次怎么理解? 展开
 我来答
machaostar
推荐于2018-04-20
知道答主
回答量:30
采纳率:100%
帮助的人:0
展开全部
服务器只会创建每个Servlet的单一实例,每个用户请求都会引发新的线程,将用户请求交给相应的doGet或者doPost进行处理。
首次创建Servlet时,它的init方法会得到调用,因此init方法是放置一次性代码的地方,之后针对每个用户请求,都会创建一个线程,该线程调用前面创建的实例的Service方法。多个并发请求回导致多个线程同时调用Service(尽管可以实现特殊的接口(SingleThreadModel)——规定任何时间只允许单个线程运行)。之后Service方法依据接受到得HTTP请求类型调用doGet,doPost,或者其他的doXXX方法。最后如果服务器决定卸载某个Servlet,它首先会调用servlet的destroy方法。
ft1226766
2010-03-20 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:93
采纳率:0%
帮助的人:116万
展开全部
susas说的是对的,Servlet的实例由应用服务器(比如tomcat)的Web容器管理,服务启动后,第一次调用某个Servlet的时候,Web容器会创建该Servlet的实例供客户端调用,然后保存该实例,在下次调用时直接使用这个实例,而不需要创建新的实例,所以叫只需要创建Servlet的实例一次
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kejiaweiren
推荐于2016-03-01 · TA获得超过6740个赞
知道大有可为答主
回答量:1774
采纳率:0%
帮助的人:3344万
展开全部
servlet是容器启动时他就启动了
他有个init方法
比如你的容器是tomcat
那么当tomcat运行时,你的servlet的init方法就会被执行了。
所以并不是一次请求他会执行一次,而是容器启动时他就执行了 ,并且只执行一次
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
susasi
2010-03-18
知道答主
回答量:44
采纳率:0%
帮助的人:0
展开全部
单例模式 只存在一个实例 不管多少人使用 都是用的一个实例
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式