博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Web容器的作用
阅读量:6954 次
发布时间:2019-06-27

本文共 990 字,大约阅读时间需要 3 分钟。

在eclipse中创建web项目时,会选择一个target runtime,意思就是在什么上面运行,也就是运行时的web容器。我们常用的Tomcat就是一种web容器。简单来说,web容器也就是servlet容器。主要有以下作用:

1.通信支持

通过web容器中的方法,只需简单的操作就能实现servlet与web服务器间的通信。而不需要自己创建socket,监听接口、新的流等一系列复杂的操作。Servlet容器包含在web服务器中,web服务器监听来自特定端口的HTTP请求,这个端口通常是80。当客户端(使用web浏览器的用户)发送一个HTTP请求时,Servlet容器会创建新的HttpServletRequest和HttpServletResponse对象,并且把它们传递给已经创建的Filter和URL模式与请求URL匹配的Servlet实例的方法,所有的这些都使用同一个线程。

request对象提供了获取HTTP请求的所有信息的入口,比如请求头和请求实体。response对象提供了控制和发送HTTP响应的便利方法,比如设置响应头和响应实体(通常是JSP生成的HTML内容)。当HTTP响应被提交并结束后,request和response对象都会被销毁。

2.控制servlet生命周期

如何加载类,实例化和初始化servlet,调用servlet方法,并使servlet实例能够被垃圾回收。有了容器,我们就不用花精力去考虑这些资源管理垃圾回收之类的事情。当Servlet容器启动时,它会部署并加载所有的web应用。当web应用被加载时,Servlet容器会一次性为每个应用创建Servlet上下文(ServletContext)并把它保存在内存里。Servlet容器会处理web应用的web.xml文件,并且一次性创建在web.xml里定义的Servlet、Filter和Listener,同样也会把它们保存在内存里。当Servlet容器关闭时,它会卸载所有的web应用和ServletContext,所有的Servlet、Filter和Listner实例都会被销毁。

3.多线程支持

为每个servlet请求创建一个线程,servlet运行完成后容器就会自动结束这个线程。

转载于:https://blog.51cto.com/13482139/2120234

你可能感兴趣的文章
DNS服务器基本服务(正向、反向解析)、别名、递归、迭代、增量传输、完全传输...
查看>>
varchar nvarchar char nchar varchar2 nvarchar2
查看>>
js 百度地图 添加自定义控件
查看>>
AI考拉技术分享会--IDE 常用功能 for Node.js
查看>>
Tomcat session Error
查看>>
HAProxy双机高可用方案之HAProxy+Keepalived
查看>>
mysql忘记密码解决方法
查看>>
Eclipse安装m2eclipse插件(Maven)
查看>>
windows 下最快搭建svn服务器方法
查看>>
获取android系统外置存储卡路径的方法
查看>>
mysql 链接错误
查看>>
php 数组字符串搜索array_search技巧
查看>>
hive中的NULL
查看>>
进程死锁(银行家算法)
查看>>
FragmentTransaction add 和 replace 完全解析
查看>>
1. ASIHttpRequest-创建和执行request
查看>>
mysql中某张表修改较大时的处理
查看>>
如何退出telnet界面
查看>>
nginx+多个tomcat配置
查看>>
sublime实用插件-持续更新
查看>>