【IT168 专稿】我们知道,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 |
* 控制器。控制器负责网站的整个逻辑。它用于管理用户与视图发生的交互。在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,流式媒体等),这种结构的优点是兼有可扩展性和安全性。