您的位置:首页 > 其它

容器处理请求

2015-09-13 02:03 337 查看
实际上,用户点击一个链接,其url指向一个servlet,也就是说真正处理请求的是servlet.如果是这样,那就需要我们要过多的考虑一个servlet的生命周期的管理了,因此,我们这里使用容器,比如tomcat来对servlet管理,由容器调用合适的servlet的方法对请求做出处理,并管理servlet的生命周期,还负责将jsp代码翻译成正真的Java。

我们来看一下容器如何处理请求的:

容器接受到用户发送来的请求,一个指向servlet的URL。容器看出来是调用servlet,所以创建对象:HttpServletRequest 以及HttpServletResponse。但是容器仍然保留着响应对象的引用。
容器将创建或分配一个线程给要调用的servlet,然后将创建的请求对象以及相应对象传递给这个线程。
容器调用servlet的service()方法,根据请求的类型不同,servlet调用不同的doGet()或者doPost()方法。
servlet处理完之后,生成动态页面,并将需要的数据填充响应对象对象。
容器保留着相应对象的引用,因此,线程结束后,容器把相应对象转换成一个http响应,然后发回给客户。此时,也删除了HttpServletRequest 以及HttpServletResponse这两个对象。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: