JSP引擎搭建起来后就可以着手使用开发工具进行JSP的编程了,现下流行的JSP开发工具主要有IBM VisualAge,JBuilder,NetBeans,JRun,Urledit,dreamweaver,editplus等,这里我们主要介绍 IBM VisualAge,JBuilder, Jrun三种工具的一些基本情况,大家可以参照其各自的特点,结合自身开发环境进行JSP开发工具的选择。
IBM VisualAge for Java
IBM的Web开发产品可谓同类之中的庞然大物:体积庞大,功能众多;使用对象是整个开发团队;而设计目标则是搞定视野里能看到的一切!
IBM WebSphere软件平台(全套的集成电子商务解决方案,包括VisualAge for Java 1.2版)是电子商务应用构架的关键部分,该构架是IBM在同一编程模型上开发的统一的端对端体系结构。作为公共编程模型,EJB规范得到了行业范围内的广泛支持,它也是电子商务应用构架的集成部件模型。VisualAge for Java是提供向导功能的第一个Java IDE,它可以生成大量的EJB基础结构代码,从而简化了EJB开发过程。另外,对话和实体beans的创建向导、把beans映射到现有关系数据存储以及先进的测试环境极大地减少了创建、测试和部署EJB所花的时间。
VisualAge for Java持续性工具能让开发人员把EJB映射到现有的关系数据库结构。利用对对话和实体beans(CMP)的支持,开发人员能从现有的数据库表生成 EJB或从现有的EJB生成数据库结构。VisualAge for Java还能提供把对象模型映射到数据模型的手段,从而把数据库管理员和Java开发人员联系在一起。另外,VisualAge for Java 3.5版还支持IBM DB2 S/390和Sybase,以及支持IBM DB2通用数据库和Oracle。
如果在VisualAge for Java中主机运行IBM WebSphere测试环境(WTE),开发人员还能在把EJB和servlet部署到远程服务器前对它们进行预测试。由于开发人员能启动和停止服务器和应用程序,并能在VisualAge for Java IDE中任意改变应用,所以开发人员不必远程部署和测试代码,从而节省了大量时间。
生成测试客户机能让开发人员测试他们服务器端的EJB而无须编写一个用户界面或等待图形制作人员给出的强制性界面。另外,当用户界面完成时,它还能作为一个测试工具,决定问题是存在于应用程序的客户机部分还是服务器部分。
VisualAge for Java还简化了把EJB添加到现有应用程序中的过程。通过生成AccessBeans,VisualAge for Java隐藏了EJB的远程和本地接口并把它融合到JavaBeans编程模型中。这提供了到EJB的简化的JavaBeans接口,简化了企业 beans与servlet或JSP间的编程接口,得到了所有Java开发人员的普遍认可。另外,AccessBeans引入了先进的EJB属性本地缓存功能,减少了远程调用的次数,提供了对EJB的快速访问能力。
现在,IBM为建设Web站点所推出的WebSphere Studio Advanced Edition及其包含的VisualAge for Java Professional Edition软件已全面转向以Java为中心,这样,Java开发人员对WebSphere全套工具的感觉或许会好了许多。Studio所提供的工具有:Web站点管理、快速开发 JDBC页向导程序、HTML编辑器和HTML语法检查等。这确实是个不错的HTML站点页面编辑环境。Studio和VisualAge集成度很高,菜单中提供了在两种软件包之间快速移动代码的选项。这就让使用Studio的Web页面设计人员和使用VisualAge的Java程序员可以相互交换文件、协同工作。
Studio提供了建立Java Server Page的完整前端开发环境。许多向导程序可以帮助用户以更快捷、更难以出错的方式实现特定的开发任务。比如说,SQL向导程序就可以让我们在测试所用的 Oracle 8i 数据库中浏览各表、执行多种SQL任务(比如增加连接、限制带约束的查询以及在存储结果之前查看查询结果等等)。
IBM新增加的标签可以让JSP访问数据的工作变得更加方便,比如 <tsx:repeat> 标签就负责遍历查询中各行而无须增加处理数据库的Java代码。这些标签表明IBM正在逐步采用以标签为中心的数据访问解决方案(就象ColdFusion所采用的方案那样)。
在编辑页面的时候,我们面前有好几个工具可供选择,包括一个图形界面的所见即所得页面编辑器、一个可以显示页面层次结构的纲要视图以及HTML源代码编辑视图。不过我们发现这些编辑工具之间存在整合方面的一些问题,相比之下还是Dreamweaver 或者ColdFusion做得好一些。
Studio提供了代码补充特性,但是很令人失望――该特性只能用于VoiceXML文件,不能用于 HTML或者JSP文件。不过,它对VoiceXML和WML这样的Web技术,其支持力度还是处于市场领先的地位。
Studio 和VisualAge都包括了JavaServer Page调试器。因为JavaServer Page在执行前采用预编译方式运行,所以IBM为其预编译表单所提供的页面调试方式值得关注,这种方式并没有在服务器上实际运行Java 源代码表单。有了VisualAge的Java Server Page调试器,我们就可以在页面调试的时候从输出窗口中查看HTML显示。不过在编译JavaServer Page之后,编译器的输出却只列出错误结果而不自动地标记那些出现错误的源代码。
VisualAge for Java支持团队开发,内置的代码库可以自动地根据我们做出改动而修改程序代码,这样我们就可以很方便地将目前代码和早期版本做出比较。Studio本身并不提供源代码版本管理的支持,它只是包含了一个内置文件锁定系统,当我们编辑项目文件的时候可以防止其他人对这些文件的错误修改。软件还支持诸如 Microsoft Visual SourceSafe这样的第三方源代码控制系统。因为Studio对多服务器和多阶段项目部署都提供了完整的可定置支持,所以开发完应用程序之后,在测试服务器和产品服务器上的应用部署都很快。
JBuilder还针对团队开发推出了CVS版本控制功能,该技术已经被我们的程序员用于建立测试应用程序。采用CVS,开发队伍就可以方便地跟踪项目开发全过程了。
工程文件(*.jpr和*.jpx)可以分为两部分,private和shared。Windows, watch, breakpoints保存在private私有部分,而libraries和编译选项保存在公有shared部分。
版本追踪和控制:Jbuilder4对每一个版本都提供更改的支持。要查看一个文件的版本信息,单击底部的histroy标签,里面有每个文件的历史修改记录。Jbuilder自动的保持着文件的备份。可以设定备份的个数。Histroy页面就用这些备份来管理着历史的修改记录。可以访问上一个版本文件。也可以查看两个版本之间做了哪些修改。Jbuilder4的企业版还提供了CVS(Concurrent Versions System并发版本系统)
JBuilder漂亮的IDE环境充分展示了Inprise和Borland开发人员的一贯喜好,JBuilder将继续获得Java程序员的青睐。这一装备了获得好评的帮助程序和服务器端EJB工具的软件在总体水准上是一款相当成熟和优秀的Java开发环境。但是Jbuilder4也还是它的不足:
1. 和中文系统有冲突。至少和Win2000的中文系统有冲突,它的菜单总是触发中文输入条。
2. 速度不够快。还是要求高配置。
3. 由于需要Application Server,而且要求装在同一机器上,开发EJB要求的硬件环境太高
4. 缺乏WebGain Studio里的一些有用工具,如StructureBuilder。缺乏和Rose等工具的高效集成
5. 支持的工具,如版本控制的工具比较少
Jrun
Allaire公司的JRun是一个具有最广阔适用性的Java引擎,用于开发及实施由Java Servlets(JSP)和JavaServer Pages编写的服务器端Java应用。JRun是第一个完全支持JSP 1.0 规格书的商业化产品,全球有超过80,000名开发人员使用JRun在他们已有的Web服务器上添加服务器端Java的功能。其中Web服务器包括了Microsoft IIS,Netscape Enterprise Server,Apache等。
JRun是开发实施服务器端Java的先进引擎。如果你希望在你的Web应用中添加服务器端Java功能,那么JRun将成为你的正确选择。
你可以使用JRun运行Java Servlets -- 运行Java Servlets有2种方法,扩展你的Web 服务器或是使用内置JRun的Web服务器。通过在整个环境中将servlets作为一个可扩展的,完整定义过的Java部件模型来使用,你就可以更加方便、快速的开发、实施复杂的应用,维护起来也更加经济。
JRun目前有3个版本,它是第一个支持Java Server Pages(JSP)规格书1.0的商业化产品。JSP是一种强大的服务器端技术,它是用于创建复杂Web应用的一整套快速应用开发系统。
JRun可以使你开始开发并测试Java应用。它最多接受5个并发的连接并且:
包括全部Java Servlet API
支持JavaServer Pages(JSP)
支持所有主要的Web servers和计算机平台
JRun Pro能够在生产环境下承受大访问量的负载,帮助你实施应用、服务或Web站点(包括内联网)。JRun Pro 支持无限量并发式连接运行多个Java虚拟机,包括多个并发的Java虚拟机(JVM)。
提供一个远程管理applet以及一个远程可再分布式的管理applet。JRun Pro Unlimited包括了所有JRun Pro的功能,除次以外,还可以运行无限量的,并发的JVM。
Allaire JRun一个适用性广泛的引擎,用于开发及实施使用JavaServer Pages(JSP) 及Java Servlets开发成的Java应用。利用Java技术,你可以在现有的Web server之上添加服务器端Java功能,JRun所支持的Web服务器包括Microsoft IIS和Personal Web Server,Netscape的Enterprise或FastTrack,Apache, O'Reilly公司的WebSite以及StarNine公司的WebSTAR。
JRun依靠其内置的JRun Web Server可以单独运行。使用服务器端Java,用户可以开发出复杂的商业应用系统。最重要的一点是,由于servlets的平台独立性,以及更加简单的开发、更快速的实施、更经济的维护成本,它是CGI(Common Gateway Interface)或Perl scripts的极佳的替代产品。
JSP开发工具主要功能:
JRun 2.3可以全面实施最新Java Servlet API。同时,JRun还可以利用Java Web Server中的许多先进功能。一些JRun2.3的重要功能列举如下:
◆全面支持Java Servlet API version2.1
◆全面支持JavaServer Pages(JSP)1.0 draft spec
◆动态 taglets
◆提供现成模板
◆页面编辑
◆dynamic-servlet重载
◆Servlet-initialization属性
◆Servlet 串联及过滤
◆多个宿主(虚拟主机)支持
◆<servlet> tag支持
◆任务跟踪
◆安装向导
◆复杂的Swing-based管理应用
◆100%纯粹Java以及完全跨平台
◆可运行于任何Java Virtual Machine
◆最多运行于5台Java Virtual machine(JRun Pro)
◆可运行于无限多个Java Virtual machine(JRun Pro Unlimited)
◆远程管理(JRun Pro)
JSP开发工具技术优势
Java Servlets是由Java Servlet API--Java平台的一部分,编写成的独立跨平台的服务器端程序。Java Servlets拥有“一次编写,随处运行”的强大力量,同时具备网络传递安全性以及对服务器端应用提供了良好伸缩性。Servlets可以替代传统的由Perl,C/C++或其他语言编写的服务器端应用及扩展程序。用户将 Servlet作为一个可扩展的,定义良好的跨平台环境来运用,能够更加方便的开发、快速实施服务器端复杂的应用,并节省维护成本。(可以在廉价的 Windows NT机器上部署servlets)
在现有的成熟的服务器技术,例如Web 服务器中结合servlets,当编写复杂的应用时,就可以避免特定服务器配置中平台的局限性及复杂性。使用Servlets,开发人员就不必再顾虑服务器的内部工作方式。servlets API内在的classes能够控制Form 数据,server header,cookies等一切物质。
现有服务器端应用和servlets的最大区别就是性能。在服务器中运行一个独立的JVM,servlet一旦被呼叫即被载入。直到servlets改变时才会被再次载入。无须重新启动服务器或应用,一个被修改过的servlet就可以被自动加载。由于servlet永远驻留在内存中,它的加载速度极快。静态或永久信息可以通过多个激活的servlet 达到共享,并且允许多个用户之间共享信息。Servelet也是模块化的,它们即可以单独的完成一项特定任务,同时也可以结合在一起工作。 servlets彼此可以互相对话。