Apache服务器之JSP概述篇

JSP(JavaServer Pages)是一种动态网页技术标准。Servlet是Java技术对CGI编程的回答。
支持JSP/Servlet的WEB服务器有很多,选择合适的WEB服务器对于构建JSP网站是非常重要的。比较有名气的WEB服务器有:Allaire JRun、apache Tomcat、BEA Weblogic Application Server、IBM WebSphere Application Server、iPlanet Web Server、JavaServer Web Development Kit(JSWDK)以及Java Web Server等。
构建JSP网站时,JSWDK可作为学习和调试使用的WEB服务器,一般的小中型网站可采用apache+Tomcat作为WEB服务器,大型的企业级网站可采用IBM WebSphere Application Server、BEA Weblogic Application Server和SUN iPlanet Enterise Web Server等作为WEB服务器。

1、直接使用JSP
对于最小型的WEB站点,可以直接使用JSP来构建动态网页,对于这种开发模式,一般可以将所有的动态处理部分都放置在JSP的Scriptlet中,就像一般使用PHP或ASP架构动态网页一样。

2、JSP+JavaBeans
中型站点面对的是数据库查询、用户管理和小量的商业业务逻辑。在JSP中加入JAVABEANS技术将有助于这种中型网站的开发。利用JAVABEANS,将很容易完成如数据库连接、用户登录与注销、商业业务逻辑封装的任务,如图1所示。

图1

3、JSP+JavaBeans+Servlet
采用ASP或PHP架构动态网站,都存在网站的逻辑关系和网站的显示页面不容易分开。在逻辑关系异常复杂的网站中,借助于Servlet和JSP良好的交互关系和JavaBeans的协助,完全可以将网站的整个逻辑结构放在Servlet中,而将动态页面的输出放在JSP页面中来完成。在这种开发方式中,一个网站可以有一个或几个核心的Servlet来处理网站的逻辑, 通过调用JSP页面来完成客户端 (通常是WEB浏览器)的请求。在J2EE模型中,Servlet的这项功能可以被EJB取代,如图2所示。

图2

4、J2EE开发模型

在J2EE开发模型中,整个系统可以分为三个主要的部分(如图3所示):

图3

* 视图。
视图就是用户界面部分,在WEB应用程序中也就是HTML、XML、JSP页面。这个部分主要处理用户看到的东西,动态的JSP部分处理了用户可以看见的动态网页,而静态的网页则由HTML、XML输出。

* 控制器。
控制器负责网站的整个逻辑。它用于管理用户与视图发生的交互。在J2EE中,控制器的功能一般是由Servlet、JavaBeans、Enterprise JavaBeans中的SessionBeans来担当的。

* 模型。
模型就是应用业务逻辑部分,这一部分的主要角色是Enterprise JavaBeans,借助于EJB强大的组件技术和企业级的管理控制,开发人员可以轻松地创建出可重用的业务逻辑模块。
JSP构建的网站操作系统可以选用Unix、Linux或Windows平台,Web服务器可以选择商业的或者使用如apache和Tomcat等免费的服务器软件,后台数据库可根据实际情况选择Oracle、Sybase、DB2或Informax、mysql等。
apache 和 Tomcat都可以做为独立的WEB服务器来用,apache功能强大、高效,但并不能支持JSP及serlet。Tomcat是Sun和apache合作做出来的JSP Server,Tomcat目前已经成为apache主要的Servlet和JSP的引擎。Tomcat在设计上是以独立的Server执行,而不像Jserv是附在apache中,这样就更可以发挥在servlet中,非HttpServlet的能力。Tomcat是Java程序,所以只要有JDK就可以使用,不需要考虑操作系统平台。
作为WEB服务器扩展的Tomcat服务器有一些问题需要说明: 当处理静态页面时,Tomcat不如apache迅速;Tomcat不象apache一样可配置; Tomcat不象apache一样强壮。基于以上原因,一个现实的网站使用一个apache作为Web服务器,为网站的静态页面请求提供服务;并使用Tomcat服务器作为一个Servlet/JSP插件,显示网站的动态页面。
采用apache+tomcat这样的结构才具有更特出的优点,主要体现在具有更好的可扩展性和安全性。这种类型的站点的主要特点是每一个页面都可能是动态生成的,但这些数据中主要部分还是静态的(比如,各类图像GIF、JPG、PNG,流式媒体等),这种结构的优点是兼有可扩展性和安全性。

评论关闭。