明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

JSP開發(fā)工具的選擇

[摘要]JSP引擎搭建起來后就可以著手使用開發(fā)工具進行JSP的編程了,現(xiàn)下流行的JSP開發(fā)工具主要有IBM VisualAge,JBuilder,NetBeans,JRun,Urledit,dreamweaver,editplus等,這里我們主要介紹IBM VisualAge,JBuilder, Jrun...
   JSP引擎搭建起來后就可以著手使用開發(fā)工具進行JSP的編程了,現(xiàn)下流行的JSP開發(fā)工具主要有IBM VisualAge,JBuilder,NetBeans,JRun,Urledit,dreamweaver,editplus等,這里我們主要介紹IBM VisualAge,JBuilder, Jrun三種工具的一些基本情況,大家可以參照其各自的特點,結(jié)合自身開發(fā)環(huán)境進行開發(fā)工具的選擇。

   IBM VisualAge for Java

   IBM的Web開發(fā)產(chǎn)品可謂同類之中的龐然大物:體積龐大,功能眾多;使用對象是整個開發(fā)團隊;而設計目標則是搞定視野里能看到的一切!

   IBM WebSphere軟件平臺(全套的集成電子商務解決方案,包括VisualAge for Java 1.2版)是電子商務應用構(gòu)架的關(guān)鍵部分,該構(gòu)架是IBM在同一編程模型上開發(fā)的統(tǒng)一的端對端體系結(jié)構(gòu)。作為公共編程模型,EJB規(guī)范得到了行業(yè)范圍內(nèi)的廣泛支持,它也是電子商務應用構(gòu)架的集成部件模型。VisualAge for Java是提供了向?qū)Чδ艿牡谝粋Java IDE,它可以生成大量的EJB基礎(chǔ)結(jié)構(gòu)代碼,從而簡化了EJB開發(fā)過程。另外,對話和實體beans的創(chuàng)建向?qū)、把beans映射到現(xiàn)有關(guān)系數(shù)據(jù)存儲以及先進的測試環(huán)境極大地減少了創(chuàng)建、測試和部署EJB所花的時間。

   VisualAge for Java持續(xù)性工具能讓開發(fā)人員把EJB映射到現(xiàn)有的關(guān)系數(shù)據(jù)庫結(jié)構(gòu)。利用對對話和實體beans(CMP)的支持,開發(fā)人員能從現(xiàn)有的數(shù)據(jù)庫表生成EJB或從現(xiàn)有的EJB生成數(shù)據(jù)庫結(jié)構(gòu)。VisualAge for Java還能提供把對象模型映射到數(shù)據(jù)模型的手段,從而把數(shù)據(jù)庫管理員和Java開發(fā)人員聯(lián)系在一起。另外,VisualAge for Java 3.5版還支持IBM DB2 S/390和Sybase,以及支持IBM DB2通用數(shù)據(jù)庫和Oracle。

   如果在VisualAge for Java中主機運行IBM WebSphere測試環(huán)境(WTE),開發(fā)人員還能在把EJB和servlet部署到遠程服務器前對它們進行預測試。由于開發(fā)人員能啟動和停止服務器和應用程序,并能在VisualAge for Java IDE中任意改變應用,所以開發(fā)人員不必遠程部署和測試代碼,從而節(jié)省了大量時間。

   生成測試客戶機能讓開發(fā)人員測試他們服務器端的EJB而無須編寫一個用戶界面或等待圖形制作人員給出的強制性界面。另外,當用戶界面完成時,它還能作為一個測試工具,決定問題是存在于應用程序的客戶機部分還是服務器部分。

   VisualAge for Java還簡化了把EJB添加到現(xiàn)有應用程序中的過程。通過生成AccessBeans,VisualAge for Java隱藏了EJB的遠程和本地接口并把它融合到JavaBeans編程模型中。這提供了到EJB的簡化的JavaBeans接口,簡化了企業(yè)beans與servlet或JSP間的編程接口,得到了所有Java開發(fā)人員的普遍認可。另外,AccessBeans引入了先進的EJB屬性本地緩存功能,減少了遠程調(diào)用的次數(shù),提供了對EJB的快速訪問能力。

   現(xiàn)在,IBM為建設Web站點所推出的WebSphere Studio Advanced Edition及其包含的VisualAge for Java Professional Edition軟件已全面轉(zhuǎn)向以Java為中心,這樣,Java開發(fā)人員對WebSphere全套工具的感覺或許會好了許多。Studio所提供的工具有:Web站點管理、快速開發(fā) JDBC頁向?qū)С绦、HTML編輯器和HTML語法檢查等。這確實是個不錯的HTML站點頁面編輯環(huán)境。Studio和VisualAge集成度很高,菜單中提供了在兩種軟件包之間快速移動代碼的選項。這就讓使用Studio的Web頁面設計人員和使用VisualAge的Java程序員可以相互交換文件、協(xié)同工作。

   Studio提供了建立Java Server Page的完整前端開發(fā)環(huán)境。許多向?qū)С绦蚩梢詭椭脩粢愿旖、更難以出錯的方式實現(xiàn)特定的開發(fā)任務。比如說,SQL向?qū)С绦蚓涂梢宰屛覀冊跍y試所用的Oracle 8i 數(shù)據(jù)庫中瀏覽各表、執(zhí)行多種SQL任務(比如增加連接、限制帶約束的查詢以及在存儲結(jié)果之前查看查詢結(jié)果等等)。

   IBM新增加的標簽可以讓JSP訪問數(shù)據(jù)的工作變得更加方便,比如 <tsx:repeat> 標簽就負責遍歷查詢中各行而無須增加處理數(shù)據(jù)庫的Java代碼。這些標簽表明IBM正在逐步采用以標簽為中心的數(shù)據(jù)訪問解決方案(就象ColdFusion所采用的方案那樣)。

   在編輯頁面的時候,我們面前有好幾個工具可供選擇,包括一個圖形界面的所見即所得頁面編輯器、一個可以顯示頁面層次結(jié)構(gòu)的綱要視圖以及HTML源代碼編輯視圖。不過我們發(fā)現(xiàn)這些編輯工具之間存在整合方面的一些問題,相比之下還是Dreamweaver 或者ColdFusion做得好一些。

   Studio提供了代碼補充特性,但是很令人失望——該特性只能用于VoiceXML文件,不能用于 HTML或者JSP文件。不過,它對VoiceXML和WML這樣的Web技術(shù),其支持力度還是處于市場領(lǐng)先的地位。

   Studio和VisualAge都包括了JavaServer Page調(diào)試器。因為JavaServer Page在執(zhí)行前采用預編譯方式運行,所以IBM為其預編譯表單所提供的頁面調(diào)試方式值得關(guān)注,這種方式并沒有在服務器上實際運行Java 源代碼表單。有了VisualAge的Java Server Page調(diào)試器,我們就可以在頁面調(diào)試的時候從輸出窗口中查看HTML顯示。不過在編譯JavaServer Page之后,編譯器的輸出卻只列出錯誤結(jié)果而不自動地標記那些出現(xiàn)錯誤的源代碼。
   
   VisualAge for Java支持團隊開發(fā),內(nèi)置的代碼庫可以自動地根據(jù)我們做出改動而修改程序代碼,這樣我們就可以很方便地將目前代碼和早期版本做出比較。Studio本身并不提供源代碼版本管理的支持,它只是包含了一個內(nèi)置文件鎖定系統(tǒng),當我們編輯項目文件的時候可以防止其他人對這些文件的錯誤修改。軟件還支持諸如Microsoft Visual SourceSafe這樣的第三方源代碼控制系統(tǒng)。因為Studio對多服務器和多階段項目部署都提供了完整的可定置支持,所以開發(fā)完應用程序之后,在測試服務器和產(chǎn)品服務器上的應用部署都很快。

   WebSphere Studio Advanced Edition 3.5 和VisualAge for Java Enterprise Edition 3.5對開發(fā)團隊而言都是可供選擇的優(yōu)秀開發(fā)環(huán)境,他們提供了對單一項目下多個開發(fā)人員的內(nèi)置支持。但是這兩套產(chǎn)品的界面和編輯缺陷使得IBM產(chǎn)品成為最佳開發(fā)包的努力功虧一簣。






Jbuiler

   JBuilder 軟件的目標定位是代碼開發(fā)人員而不是高級設計人員,所以JBuilder中包含了大量的向?qū)С绦蚝推渌槍χ虚g層的快速開發(fā)工具。JBuilder性能穩(wěn)定、使用方便,特別適用于創(chuàng)建Java 組件。此外該軟件還提供了很多JSP功能。




   JBuilder本身通過內(nèi)置的Java和Swing(Java的GUI程序框架)技術(shù)支持跨平臺的軟件開發(fā):它可以運行在Windows、Linux和Solaris操作系統(tǒng)之上,操作界面和工具完全一致。這種所謂的“all-Java”策略意味著軟件運行JBuilder的內(nèi)存不會太多。128MB是系統(tǒng)最小需求,我們推薦裝備256MB內(nèi)存以獲得更好的性能。

   和早期版本一樣,JBuilder 4 IDE設計得更富于效率性和功能性。你可以在同一開發(fā)環(huán)境下很方便地查看Java、 HTML和JSP文件、建立Sun推出的新型JDK 1.3 HotSpot虛擬機(這種新型虛擬機優(yōu)化了Java代碼)。JBuilder具有了相當出色的響應界面。在多種令人注目的特性之后,我們特別喜歡方便的自動補充功能(auto-completion wizardry),該功能不僅支持即時幫助還支持鍵入Java代碼的參數(shù)自動填充。

   


   JBuilder Enterprise版更提供了對Enterprise Java-Bean組件開發(fā)的支持。在Jbuilder中,可以更容易的創(chuàng)建(create)配置(deploy)企業(yè)JavaBean。提供了一系列的向?qū)磉M行創(chuàng)建,處理,配置企業(yè)JavaBean的流程。把IAS的配置描述編輯器集成到Jbuilder的開發(fā)環(huán)境中(不過,并沒有把IAS4.1內(nèi)置到Jbuilder4中,需要另外下載安裝)。Jbuilder還支持BEA的WebLogic Server 5.1。

  Jbuider4的一個新的特性就是EJB Group功能。每一個EJB Group都代表了一個可配置的JAR文件。通過EJB Group,可以對已有的EJB在EJB Group之間進行移植。一個project工程中可以有多個EJB Group。
  Entity Bean Modeler可以創(chuàng)建一個映射到現(xiàn)存表的實體Entity Bean?梢援a(chǎn)生所有必須的java代碼,更新EJBGroup中配置描述。
在Jbuilder中,可以:

  1、用EJB 向?qū)?chuàng)建Session Bean和Entity Bean
  2、用Entity Bean Modeler將Entity Bean映射到現(xiàn)有的table中。
  3、通過EJB Group向?qū)?chuàng)建EJB Group。這樣,就可以在一個應用程序里面放多個的Enterprise JavaBean。
  4、可以將一個Enterprise JavaBean從一個EJB Group移植到另一個EJB Group
  5、一個應用程序里面可以有多個的EJB Group。
  6、用Make和Rebuild就可以自動的創(chuàng)建可配置的JAR文件。
  7、可以在node viewer中查看JAR的內(nèi)容。
  8、通過Test Client wizard可以在本地的容器或者與EJB1.1兼容的應用服務器中測試Enterprise JavaBean。
   9、運行或調(diào)式EJB的時候會自動的配置EJB。 JBuilder支持EJB 1.1,由于采用了靈活的XML解決方案,軟件還準備支持EJB 2.0。目前用戶可以自動地生成基于后端數(shù)據(jù)庫表的EJB Java 類。JBuilder同時還簡化了EJB的自動部署功能。此外它還支持CORBA,相應的向?qū)С绦蛴兄谟脩羧娴毓芾鞩DL(分布應用程序所必需的接口定義語言interface definition language)和控制遠程對象。

    JBuilder的本地開發(fā)依賴于軟件中所包含的輕度Java數(shù)據(jù)庫,這種數(shù)據(jù)庫被叫做JDataStore。軟件包含的JDataStore Explorer和JDBC Explorer 可以讓用戶管理JDataStore和任何遵守JDBC標準的數(shù)據(jù)源。增強了數(shù)據(jù)庫工具功能,也更加容易使用了。
  JdataStore:更快,更靈活了。其底層的連接池的性能有顯著的提高。Jbuilder4對支持JTA的支持使JdataStore連接可以利用標準的XA接口參與分布式的事務處理。
  JdataStore Explorer可以用圖形化的界面創(chuàng)建和操作table?梢詣(chuàng)建表的索引,F(xiàn)在JdataStore支持交叉連接,內(nèi)連接,外連接,左,右連接。
在現(xiàn)在的發(fā)行版本中,是通過“natural”或 “using”關(guān)鍵字來指定連接的域。JdataStore現(xiàn)在也支持SQL-92的連接序列,支持分級的子查詢。

   JBuilder 處理同時也建立在中間層的EJB之上的事務可謂得心應手。盡管用JBuilder創(chuàng)建默認的JSP非常容易,你還是可以用基本的HTML表單而不是WebSphere Studio中的工具來完成該項工作。JSP本身對JBuilder而言還是一種很新穎的技術(shù),你可以用簡單的JavaBean 技術(shù)來管理JavaServer Page。

   JBuilder 4 Enterprise包含了300多種組件,其中,大多數(shù)組件都屬于JavaBean和Swing控件,這對建立客戶端小程序和獨立運行的Java應用程序是很有用的。此外軟件還包括16種名為InternetBeans的特殊控件。不過,這些控件都是專用于JSP和servlet的。這些組件封裝了Web表單中采用的控件,其范圍不僅包括了簡單的按鈕也包括表這樣的高級特性。

   這些對象都將HTML和后臺的JSP/servlet代碼分割開來,這樣Web設計人員在無須Java程序員修改底層代碼的情況下就可以單獨修改HTML。這種解決方案對我們很有吸引力,有了它也就擁有了未來擴展的足夠余地。事實上,同類組件還可以讓用戶生成用于無線設備的WML代碼,你只需要將模版改為WML,這些InternetBeans就會動態(tài)地填充用于WAP設備的數(shù)據(jù)。在真實的應用環(huán)境中,我們完全可以采用自己喜歡的HTML工具從事HTML編輯工作。Jbuilder支持Web應用程序的開發(fā),增加了對XML的支持,提供了更好的Servlet和JSP的支持。通過InternetBeans Express和一些組件,能夠在Java和html之間進行無縫數(shù)據(jù)轉(zhuǎn)換。 Jbuilder內(nèi)置了Tomcat3.1,可以動態(tài)的調(diào)試Servlet和JSP程序。 每一個Servlet都有一個別名(Servlet-name)和init()初始化函數(shù)的參數(shù),能夠離開SHTML獨立執(zhí)行! builder提供了增強的JSP支持,很容易的就可以直接調(diào)試JSP源代碼。提供了XML的支持。能夠簡單快速的編寫XML文件。XML關(guān)鍵字的高亮度顯示很容易的對整個XML文件的結(jié)構(gòu)了如指掌。 通過InternetBeans Express控件,可以動態(tài)的產(chǎn)生WEB頁面的內(nèi)容。

   JBuilder還針對團隊開發(fā)推出了CVS版本控制功能,該技術(shù)已經(jīng)被我們的程序員用于建立測試應用程序。采用CVS,開發(fā)隊伍就可以方便地跟蹤項目開發(fā)全過程了。
工程文件(*.jpr和*.jpx)可以分為兩部分,private和shared。Windows, watch, breakpoints保存在private私有部分,而libraries和編譯選項保存在公有shared部分。




  版本追蹤和控制:Jbuilder4對每一個版本都提供更改的支持。要查看一個文件的版本信息,單擊底部的histroy標簽,里面有每個文件的歷史修改記錄。Jbuilder自動的保持著文件的備份?梢栽O定備份的個數(shù)。Histroy頁面就用這些備份來管理著歷史的修改記錄?梢栽L問上一個版本文件。也可以查看兩個版本之間做了哪些修改。Jbuilder4的企業(yè)版還提供了CVS(Concurrent Versions System并發(fā)版本系統(tǒng))

   JBuilder漂亮的IDE環(huán)境充分展示了Inprise和Borland開發(fā)人員的一貫喜好,JBuilder將繼續(xù)獲得Java程序員的青睞。這一裝備了獲得好評的幫助程序和服務器端EJB工具的軟件在總體水準上是一款相當成熟和優(yōu)秀的Java開發(fā)環(huán)境。但是Jbuilder4也還是它的不足:

  1. 和中文系統(tǒng)有沖突。至少和Win2000的中文系統(tǒng)有沖突,它的菜單總是觸發(fā)中文輸入條。
  2. 速度不夠快。還是要求高配置。
  3. 由于需要Application Server,而且要求裝在同一機器上,開發(fā)EJB要求的硬件環(huán)境太高
  4. 缺乏WebGain Studio里的一些有用工具,如StructureBuilder。缺乏和Rose等工具的高效集成
  5. 支持的工具,如版本控制的工具比較少


Jrun

   Allaire公司的JRun是一個具有最廣闊適用性的Java引擎,用于開發(fā)及實施由Java Servlets(JSP)和JavaServer Pages編寫的服務器端Java應用。JRun是第一個完全支持JSP 1.0 規(guī)格書的商業(yè)化產(chǎn)品,全球有超過80,000名開發(fā)人員使用JRun在他們已有的Web服務器上添加服務器端Java的功能。其中Web服務器包括了Microsoft IIS,Netscape Enterprise Server,Apache等。
JRun是開發(fā)實施服務器端Java的先進引擎。如果你希望在你的Web應用中添加服務器端Java功能,那么JRun將成為你的正確選擇。
   你可以使用JRun運行Java Servlets -- 運行Java Servlets有2種方法,擴展你的Web 服務器或是使用內(nèi)置JRun的Web服務器。通過在整個環(huán)境中將servlets作為一個可擴展的,完整定義過的Java部件模型來使用,你就可以更加方便、快速的開發(fā)、實施復雜的應用,維護起來也更加經(jīng)濟。
   JRun目前有3個版本,它是第一個支持Java Server Pages(JSP)規(guī)格書1.0的商業(yè)化產(chǎn)品。JSP是一種強大的服務器端技術(shù),它是用于創(chuàng)建復雜Web應用的一整套快速應用開發(fā)系統(tǒng)。
   JRun可以使你開始開發(fā)并測試Java應用。它最多接受5個并發(fā)的連接并且:
包括全部Java Servlet API
支持JavaServer Pages(JSP)
支持所有主要的Web servers和計算機平臺
JRun Pro能夠在生產(chǎn)環(huán)境下承受大訪問量的負載,幫助你實施應用、服務或Web站點(包括內(nèi)聯(lián)網(wǎng))。JRun Pro 支持無限量并發(fā)式連接運行多個Java虛擬機,包括多個并發(fā)的Java虛擬機(JVM)。
提供一個遠程管理applet以及一個遠程可再分布式的管理applet。JRun Pro Unlimited包括了所有JRun Pro的功能,除次以外,還可以運行無限量的,并發(fā)的JVM。
   
   Allaire JRun一個適用性廣泛的引擎,用于開發(fā)及實施使用JavaServer Pages(JSP)及Java Servlets開發(fā)成的Java應用。利用Java技術(shù),你可以在現(xiàn)有的Web server之上添加服務器端Java功能,JRun所支持的Web服務器包括Microsoft IIS和Personal Web Server,Netscape的Enterprise或FastTrack,Apache, O'Reilly公司的WebSite以及StarNine公司的WebSTAR。

   JRun依靠其內(nèi)置的JRun Web Server可以單獨運行。使用服務器端Java,用戶可以開發(fā)出復雜的商業(yè)應用系統(tǒng)。最重要的一點是,由于servlets的平臺獨立性,以及更加簡單的開發(fā)、更快速的實施、更經(jīng)濟的維護成本,它是CGI(Common Gateway Interface)或Perl scripts的極佳的替代產(chǎn)品。

主要功能:
   JRun 2.3可以全面實施最新Java Servlet API。同時,JRun還可以利用Java Web Server中的許多先進功能。一些JRun2.3的重要功能列舉如下:
· 全面支持Java Servlet API version2.1
· 全面支持JavaServer Pages(JSP)1.0 draft spec
· 動態(tài) taglets
· 提供現(xiàn)成模板
· 頁面編輯
· dynamic-servlet重載
· Servlet-initialization屬性
· Servlet 串聯(lián)及過濾
· 多個宿主(虛擬主機)支持
· <servlet> tag支持
· 任務跟蹤
· 安裝向?qū)?
· 復雜的Swing-based管理應用
· 100%純粹Java以及完全跨平臺
· 可運行于任何Java Virtual Machine
· 最多運行于5臺Java Virtual machine(JRun Pro)
· 可運行于無限多個Java Virtual machine(JRun Pro Unlimited)
· 遠程管理(JRun Pro)
   技術(shù)優(yōu)勢
   Java Servlets是由Java Servlet API--Java平臺的一部分,編寫成的獨立跨平臺的服務器端程序。Java Servlets擁有“一次編寫,隨處運行”的強大力量,同時具備網(wǎng)絡傳遞安全性以及對服務器端應用提供了良好伸縮性。Servlets可以替代傳統(tǒng)的由Perl,C/C++或其他語言編寫的服務器端應用及擴展程序。用戶將Servlet作為一個可擴展的,定義良好的跨平臺環(huán)境來運用,能夠更加方便的開發(fā)、快速實施服務器端復雜的應用,并節(jié)省維護成本。(可以在廉價的Windows NT機器上部署servlets)

   在現(xiàn)有的成熟的服務器技術(shù),例如Web 服務器中結(jié)合servlets,當編寫復雜的應用時,就可以避免特定服務器配置中平臺的局限性及復雜性。使用Servlets,開發(fā)人員就不必再顧慮服務器的內(nèi)部工作方式。servlets API內(nèi)在的classes能夠控制Form 數(shù)據(jù),server header,cookies等一切物質(zhì)。

   現(xiàn)有服務器端應用和servlets的最大區(qū)別就是性能。在服務器中運行一個獨立的JVM,servlet一旦被呼叫即被載入。直到servlets改變時才會被再次載入。無須重新啟動服務器或應用,一個被修改過的servlet就可以被自動加載。由于servlet永遠駐留在內(nèi)存中,它的加載速度極快。靜態(tài)或永久信息可以通過多個激活的servlet 達到共享,并且允許多個用戶之間共享信息。Servelet也是模塊化的,它們即可以單獨的完成一項特定任務,同時也可以結(jié)合在一起工作。 servlets彼此可以互相對話。

JRun支持的Web Server
· Microsoft's Internet Information Server (IIS) and Personal Web Server (PWS)
· Netscape's Enterprise and FastTrack Servers
· Apache · O'Reilly's WebSite Pro
· StarNine's WebSTAR
· Novell Netware 5 (Novonyx)




相關(guān)文章