Servlets和JSP研发原则
2008-02-23 05:04:49来源:互联网 阅读 ()
假如您已基本了解JSP和Servlet的各项技术(最好也研发过一些Web应用),那么我们能够一起探讨一下如何研发“好”的应用的一些指导原则。我们首先对Servlet和JSP技术做一个浏览。
Servlet和JSP概览
早期的动态网页主要采用CGI(Common Gateway Interface,公共网关接口)技术,您能够使用不同的语言编写CGI程式,如VB、C/C 或Delphi等。虽然CGI技术发展成熟且功能强大,但由于编程困难、效率低下、修改复杂等缺点,所以有逐渐被取代的趋势。在任何的新技术中,JSP/Servlet具备更高效、更容易编程、功能更强、更安全和具备良好的可移植性,因而被许多人认为是未来最有发展前途的动态网站技术。
和CGI相似,Servlet支持请求/响应模型。当一个客户向服务器递交一个请求时,服务器把请求送给Servlet,Servlet负责处理请求并生成响应,然后送给服务器,再由服务器发送给客户。和CGI不同的是,Servlet没有生成新的进程,而是和HTTP Server处于同一进程中。他通过使用线程技术,减小了服务器的开销。Servlet处理请求的过程是这样的:当收到来自客户端的请求后,调用service方法,该方法中Servlet先判断到来的请求是什么类型的(GET/POST/HEAD…),然后调用相应的处理方法(doGet/doPost/doHead…)并生成响应。
别看这么复杂,其实简单说来Servlet就是个Java类。和一般类的不同之处是,这个类运行在一个Servlet容器内,能够提供session管理和对象生命周期管理。因而当您使用Servlet的时候,您能够得到Java平台的任何好处,包括安全性管理、使用JDBC访问数据库连同跨平台的能力。而且,Servlet使用线程,因而能够研发出效率更高的Web应用。
JavaServer Pages (JSP)
JSP技术是J2EE的一个关键技术,他在更高一级的层次上抽象Servlet。他能够让常规静态HTML和动态产生的内容相结合,看起来像一个HTML网页,却作为Servlet来运行。现在有许多商业应用服务器支持JSP技术,比如BEA WebLogic、IBM WebSphere、 JRun等等。使用JSP比用Servlet更简单。假如您有一个支持JSP的Web服务器,并且有一个JSP文档,您能够把他放倒任何静态HTML文档能够放置的位置,不用编译,不用打包,也不用进行ClassPath的配置,就能够像访问普通网页那样访问他,服务器会自动帮您做好其他的工作。
JSP工作原理
JSP 文档看起来就像一个普通静态HTML文档,只但是里面包含了一些Java代码。他使用.jsp的后缀,用来告诉服务器这个文档需要特别的处理。当我们访问一个JSP页面的时候,这个文档首先会被JSP引擎翻译为一个Java源文档,其实就是个Servlet,并进行编译,然后像其他Servlet相同,由Servlet引擎来处理。Servlet引擎装载这个类,处理来自客户的请求,并把结果返回给客户,如下图所示:
图1: 调用JSP页面的流程
以后再有客户访问这个页面的时候,只要该文档没有发生过更改,JSP引擎就直接调用已装载的Servlet。假如已做过修改的话,那就会再次执行以上过程,翻译、编译并装载。其实这就是所谓的“第一人惩罚”。因为首次访问的时候要执行一系列以上的过程,所以会耗费一些时间;以后的访问就不会这样了。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇: Windows下C语言网络编程快速入门
下一篇: JSP设计模式
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash