這篇文章主要介紹了JAVA中JSP與Servlet的區(qū)別有哪些,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
成都創(chuàng)新互聯(lián)公司-成都網(wǎng)站建設(shè)公司,專注成都網(wǎng)站建設(shè)、成都做網(wǎng)站、網(wǎng)站營銷推廣,域名注冊,虛擬主機,網(wǎng)站改版維護有關(guān)企業(yè)網(wǎng)站制作方案、改版、費用等問題,請聯(lián)系成都創(chuàng)新互聯(lián)公司。
JSP和SERVLET到底在應用上有什么區(qū)別,很多人搞不清楚。我來胡扯幾句吧。簡單的說,SUN首先發(fā)展出SERVLET,其功能比較強勁,體系設(shè)計也很先進,只是,它輸出HTML語句還是采用了老的CGI方式,是一句一句輸出,所以,編寫和修改HTML非常不方便。
后來SUN推出了類似于ASP的鑲嵌型的JSP,把JSP TAG鑲嵌到HTML語句中,這樣,就大大簡化和方便了網(wǎng)頁的設(shè)計和修改。新型的網(wǎng)絡語言如ASP,PHP,JSP都是鑲嵌型的SCRIPT語言。
從網(wǎng)絡三層結(jié)構(gòu)的角度看,一個網(wǎng)絡項目最少分三層:data layer,business layer, presentation layer。當然也可以更復雜。SERVLET用來寫business layer是很強大的,但是對于寫presentation layer就很不方便。JSP則主要是為了方便寫presentation layer而設(shè)計的。當然也可以寫business layer。寫慣了ASP,PHP,CGI的朋友,經(jīng)常會不自覺的把presentation layer和business layer混在一起。就象前面那個朋友,把數(shù)據(jù)庫處理信息放到JSP中,其實,它應該放在business layer中。
根據(jù)SUN自己的推薦,JSP中應該僅僅存放與presentation layer有關(guān)的東東,也就是說,只放輸出HTML網(wǎng)頁的部份。而所有的數(shù)據(jù)計算,數(shù)據(jù)分析,數(shù)據(jù)庫聯(lián)結(jié)處理,統(tǒng)統(tǒng)是屬于business layer,應該放在JAVA BEANS中。通過JSP調(diào)用JAVA BEANS,實現(xiàn)兩層的整合。
實際上,微軟前不久推出的DNA技術(shù),簡單說,就是ASP+COM/DCOM技術(shù)。與JSP+BEANS完全類似,所有的presentation layer由ASP完成,所有的business layer由COM/DCOM完成。通過調(diào)用,實現(xiàn)整合。
為什么要采用這些組件技術(shù)呢?因為單純的ASP/JSP語言是非常低效率執(zhí)行的,如果出現(xiàn)大量用戶點擊,純SCRIPT語言很快就到達了他的功能上限,而組件技術(shù)就能大幅度提高功能上限,加快執(zhí)行速度。
另外一方面,純SCRIPT語言將presentation layer和business layer混在一起,造成修改不方便,并且代碼不能重復利用。如果想修改一個地方,經(jīng)常會牽涉到十幾頁CODE,采用組件技術(shù)就只改組件就可以了。
綜上所述,SERVLET是一個早期的不完善的產(chǎn)品,寫business layer很好,寫presentation layer就很臭,并且兩層混雜。
所以,推出JSP+BAEN,用JSP寫presentation layer,用BAEN寫business layer。SUN自己的意思也是將來用JSP替代SERVLET。
可是,這不是說,學了SERVLET沒用,實際上,你還是應該從SERVLET入門,再上JSP,再上JSP+BEAN。
強調(diào)的是:學了JSP,不會用JAVA BEAN并進行整合,等于沒學。大家多花點力氣在JSP+BEAN上。
在補充幾句:
我們可以看到,當ASP+COM和JSP+BEAN都采用組件技術(shù)后,所有的組件都是先進行編譯,并駐留內(nèi)存,然后快速執(zhí)行。所以,大家經(jīng)常吹的SERVLET/JSP先編譯駐內(nèi)存后執(zhí)行的速度優(yōu)勢就沒有了。
反之,ASP+COM+IIS+NT緊密整合,應該會有較大的速度優(yōu)勢呈現(xiàn)。而且,ASP+COM+IIS+NT開發(fā)效率非常高,雖然BUG很多。
那么,為什么還用JSP+BEAN?因為JAVA實在前途遠大。微軟分拆后,操作系統(tǒng)將群雄并起,應用軟件的開發(fā)商必定要找一個通用開發(fā)語言進行開發(fā),JAVA一統(tǒng)天下的時機就到了。如果微軟分拆順利,從中分出的應用軟件公司將成為JAVA的新領(lǐng)導者。目前的JAVA大頭SUN和IBM都死氣沉沉,令人失望。希望新公司能注入新活力。不過,新公司很有可能和舊SUN展開JAVA標準大戰(zhàn),雙方各自制定標準,影響JAVA夸平臺。
另外,現(xiàn)在的機器速度越來越快,JAVA的速度劣勢很快就可以被克服。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“JAVA中JSP與Servlet的區(qū)別有哪些”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學習!