程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> 三種Web開發主流技術的評價之JSP

三種Web開發主流技術的評價之JSP

編輯:關於JSP

JSP又是什麼原因出現的呢?Java在推向開發人員時出現了重重困難,首先是Java缺少主流系統的廣泛支持,而在所有的平台和技術上都缺少可以直接參照的應用方式。這時java就走向了在各個應用層上的積極進取,在自己擅長的與不擅長的領域都走出了堅定的腳步。其中最讓Web技術人員興奮的就是Java Servlet的出現和JSP的漸漸成熟,這一步步都讓Java正式的走向了Web開發技術的舞台。Java利用了它的跨平台技術,使java的應用能快速的部署在各個平台上,而真的可以一處編寫隨處運行。它有較的利用了這個優勢,巧妙的將java的通用性、jsp的易用性、servlet的速度結合在一起,利用平台部署上的技巧有效的屏蔽java的速度問題,所以Java迅速的在Web開發人員的團員中推廣開來。攜著Java Bean、EJB、Java Application Server、Java事務服務器等這樣的強大後台走向了真正的成熟應用。

 

  Jsp到底是一個什麼樣的語言呢?實際上JSP就是Java,只是它是一個特別的Java語言,加入了一個特殊的引擎,這個引擎將HTTPServlet這個類的一些對象自動進行初始化好讓用戶使用,而用戶不用再去操心前面的工作。同時這個引擎又引入了<jsp:*、<%@等一系列的特別語法,使用這些語法來進行一些特定的操作,如引用文件、URL轉向、JavaBean引用等這樣的操作,這些都是由引擎自動幫你完成初始化的工作。我們可以將這個引擎看作一個Jsp到Java Servlet的生成器或是翻譯器,讓用戶不用再面對復雜的Servlet中的還沒開始工作就要寫的幾十行代碼。這就是JSP--一個Java Servlet生成器。JSP->Java Servlet Code(.java文件)->Java Runtime Bin Code(.class文件),這就是為什麼我們第一次運行JSP時CPU運行能達到很高的原因,它實際上是調用了jsp引擎來生成java文件,再用javac來編譯它到class文件,這才能去執行它。同時也說明了在第一次運行以後,速度為什麼哪麼快的原因,只要這個jsp文件不改變哪麼這個操作就不再會進行了(除非你刪除了class文件)。所以說,java有什麼jsp就有什麼樣的功能,與asp一樣,jsp的真正力量是我們永遠看不到頭的!

 

  強勢:

 

  1、一處編寫隨處運行。這是一個程序員的夢想,也是從前的程序員的惡夢,為了在不同的平台間運行,使許多程序員一行行的重寫代碼。在這一點上java已經給了我最完美的答案它做的要比php更出色,除了系統之外,你的代碼不用做一點更改的。

 

  2、系統的多台平支持。我已經在差不多所有平台上見到了一致的java servlet/jsp的Web Server/Application Server……系統它可以讓你在任意環境做開發,在任意環境進行系統部署,在任意環境擴展。相比asp/php的局限性是顯面易見的。

 

  3、強大的的可伸縮性。從只有一個小的jar文件就可以運行servlet/jsp到由多台服務器進行集群和負載均橫,到多台Application進行事務處理、消息處理......一台服務器到無數以服務器,Java顯示了一個巨人的生命力。

 

  4、多樣化和功能強大的開發工具支持。這一點與asp很像,java已經有了許多非常優秀的開發工具而且有許多可以免費得到,並且其中的許多已經可以順利的運行於多種平台之下。如果你細心的使用它們會發現比自己第一面看到它們時的功能要強大的多。

 

  弱勢:

 

  1、與ASP一樣,Java的一些優勢正是它致命的問題所在。正是由於為了跨平台的功能,為了極度的伸縮能力,所以極大的增加了產品的復雜性。這麼說,它在擴展時需要的分成多少塊,哪麼java系統中就有多少種產品。所以你要以看到jre、jdk、jsdk、jswdk……,實際上它們只要有效的搭配在一起,就可以產生強大的效能,密不可分,但是對於一位初學者來說:“有沒有搞錯!難道讓我運行一個jsp就要這麼多亂七八糟的東西!”

 

  2、從出現的第一天起就被對手痛罵的:“慢如老牛”。真的,我在第一次運行我的jsp時,我竟然以為我的機器死機而將哪個進程給kill了!第一次編繹、運行對於使用者來說真是一場惡夢,在開發時我經常晚上做夢在看WinNT的任務管理器CPU格全綠時等著降下來的樣子和感覺。

 

  3、技巧還是技巧。一個短處就一定要付出代價的。Java的運行速度是用將class常駐內存來完成的,所以它在一些情況下所使用的內存比起用戶數量來說卻實是“最低性能價格比”了。另一方面來說,它還需要硬盤空間來存儲一系列的.java文件和.class文件以及對應的版本文件。

 

  4、缺少系統性的資料。這也許不該說,但是sun在國內做的卻實很差勁,java的資烊在國內極少,到現在我還沒有在書店裡看到一本jsp的書,而對java體系的論述書更是少而又少,與java相關的書(中文版)到現在不過三位數。而再看看之中大量的具然還在講Visual J++或是Java 1.1這樣的陣年舊貨。

 

  總結:

 

  適用人群:具有較強學習能力和耐心的開發人員。投入低但是希望擁有較大的伸縮能力的應用。

 

  適用平台:……(太多而只不再一一列說)適用應用:Internet/Intranet高可靠性應用、Internet/Intranet與Client/Server結合的應用系統

 

  學習方式:Java的Doc文檔和java站點中的一系文檔Internet的源代碼資源(對不起大家,真的不能提出更好的建議了,再有的就是大家的能力和運氣,以及Inetnet上網友的幫助了)

 

  推薦開發工具:JBuilder/Visual Age for java(這個我沒用過,但是有人強力推薦)/Sun Forte for JavaKAWA

 

  推薦開發環境:Windows NT/Windows 2000開發系統JBuilder 3.5(它能成為Web Server,甚至不再需要其它的工具)Tomcat 3.1JDK 1.3(可以不安裝)Access 2000/P II 266/128M RAM/9G HD

 

  推薦應用環境(最少):RedHat Linux 6.2/MySQL 3.22/Apache 1.3.12/Tomcat 3.1/JDK 1.3Beta/PIII 500/512M RAM/9G HD

 

  推薦應用環境(最佳):Solaris 8/Sybase 11/iPlanet Enterprise Web Server 4.1/JDK 1.3Beta/Sun Netra T1/1G RAM/18G HD

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved