本文介绍什么是Java Servlet。Servlet看起来像是通常的Java程序,可动态地从网络加载,可以说Servlet对Server就如同Applet对Client一样。在美国,EJB+Java Servlet+JSP几乎成为电子商务的开发标准。
Java Servlet是用Java编写的Server端程序,它与协议和渠道无关。Servlet运转于Java-enabled Web Server中。Java Servlet可以动态地扩展Server的才能,并选用恳求-呼应形式供给Web服务。
最早支撑Servlet技能的是JavaSoft的Java Web Server。尔后,一些其它的根据Java的Web Server开端支撑规范的Servlet API。Servlet的主要功能在于交互式地阅读和修正数据,生成动态Web内容。这个进程为:
1. 客户端发送恳求至服务器端;
2. 服务器将恳求信息发送至Servlet
3. Servlet生成呼应内容并将其传给Server。呼应内容动态生成,一般取决于客户端的恳求
4. 服务器将呼应回来给客户端
Servlet看起来像是一般的Java程序。Servlet导入特定的归于Java Servlet API的包。因为是目标字节码,可动态地从网络加载,可以说Servlet对Server就好像Applet对Client相同,可是,因为Servlet运转于Server中,它们并不需求一个图形用户界面。从这个视点讲,Servlet也被称为Faceless Object。
JAVA Servlet的优势:
Servlet可以和其他资源(文件、数据库、Applet、Java运用程序等)交互,以生成回来给客户端的呼应内容。假如需求,还可以保存恳求-呼应进程中的信息。
选用Servlet,服务器可以彻底授权对本地资源的拜访(如数据库),而且Servlet本身将会操控外部用户的拜访数量及拜访性质
Servlet可以是其它服务的客户端程序,例如,它们可以用于分布式的运用体系中,可以从本地硬盘,或许经过网络从远端硬盘激活Servlet。
Servlet可被链接(chain)。一个Servlet可以调用另一个或一系列Servlet,即成为它的客户端。
选用Servlet Tag技能,可以在HTML页面中动态调用Servlet。
Servlet API与协议无关。它并不对传递它的协议有任何假定。
像一切的Java程序相同,Servlet具有面向目标Java言语的一切优势
Servlet供给了Java运用程序的一切优势——可移植、稳健、易开发。运用Servlet 的Tag技能,Servlet可以生成嵌于静态HTML页面中的动态内容。
一个Servlet被客户端发送的***个恳求激活,然后它将持续运转于后台,等候今后的恳求。每个恳求将生成一个新的线程,而不是一个完好的进程。多个客户可以在同一个进程中一起得到服务。一般来说,Servlet进程只是在Web Server卸载时被卸载。
Java Servlet生命周期:
装载Servlet。这项操作一般是动态履行的。但是,Server一般会供给一个办理的选项,用于在Server启动时强制装载和初始化特定的Servlet。
Server创立一个Servlet的实例
Server调用Servlet的init()办法
一个客户端的恳求抵达Server
Server创立一个恳求目标
Server创立一个呼应目标
Server激活Servlet的service()办法,传递恳求和呼应目标作为参数
service()办法取得关于恳求目标的信息,处理恳求,拜访其他资源,取得需求的信息
service()办法运用呼应目标的办法,将呼应传回Server,终究抵达客户端。service()办法或许激活其它办法以处理恳求,如doGet()或doPost()或程序员自己开发的新的办法
关于更多的客户端恳求,Server创立新的恳求和呼应目标,依然激活此Servlet的service()办法,将这两个目标作为参数传递给它。如此重复以上的循环,但无需再次调用init()办法。一般Servlet只初始化一次 ,当Server不再需求Servlet时(一般当Server封闭时),Server调用Servlet的Destroy()办法。
在美国,EJB+Java Servlet+JSP简直成为电子商务的开发规范。原本 ASP 也很有期望,但微软最近或许把精力都会集在打官司和Win2000上, 因而电子商务开展得太少。PHP因为其形式和一些天然生成缺点,毫无期望。 在美国,很少有商业站点用PHP的。
【修改引荐】
- 整合Apache中JSP和PHP
- Java Servlets(JSP)开发环境
- 开发JSP HTTP服务器
- 挑选JSP开发工具
- Servlet和JSP途径具体介绍