`
xieboke
  • 浏览: 4734 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

servlet相关知识

 
阅读更多
当我们想在web服务器上运行web的一些应用的话,我们需要有些协议让服务器和应用进行沟通。Servlet就是其中一个常见的主要协议和接口。它是在服务器上运行的小程序。web服务器与web应用层的一系列java接口统称为Java Servlet API。能够发布运行java应用的web服务器成为servlet容器。

web容器的概念要比servlet容器的概念要大。jetty和tomcat既是一个web容器也是一个servlet容器。但是jetty相较于tomcat具有可插拔的特点。所以google选择jetty代替了tomcat,因为在云框架中,可插拔和可扩展这两个特性可以帮助web容器省去很多占用的内存资源。

它的工作流程是:
1. 客户端向服务器发送请求
2. 服务器启动并调用Servlet
3. Servlet容器创建一个ServletRequest对象,将所有请求相关的数据导入
4. Servlet容器创建一个ServletResponse对象,生成响应客户请求的内容并将其传给服务器
5. 服务器将Servlet容器生成的内容发送给客户端

常常会把Servlet和Socket搞混,他们的区别是:

Socket的英文原义是插座,也称作"套接字",它的作用是来描述IP地址和端口,用来实现虚拟机或者主机之间的交流。互联网上的主机一般会运行很多服务,而每种服务都会打开一个Socket,并绑定到一个端口上。所以说Socket是直接建立连接,是两个虚拟机或者主机之间建立连接的方式。而Servlet只是接到客户端请求之后在服务器端运行的程序而已,它是一种响应客户端的方式,属于应用层面的概念。


参考文献:
1. http://www.ibm.com/developerworks/cn/java/j-lo-servlet/
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics