javascript
JS和JSP的区别?
名字:
JS:JavaScript
JSP:Java Server Pages
執(zhí)行過程:JSP先翻譯,翻譯成Servlet執(zhí)行
如: test.jsp 要變成 test_jsp.java 然后編譯成 test_jsp.class
而 test_jsp.java 本身就是一個(gè)servlet.
所以 jsp只是servlet的一個(gè)變種,方便書寫html內(nèi)容才出現(xiàn)的。
servlet是根本,所有jsp能做的,servlet全能做。
JS:是一種基于對(duì)象的客戶端腳本語(yǔ)言。目的是解決服務(wù)器端語(yǔ)言。
如:Perl,遺留的速度問題,為客戶提供更流暢的瀏覽效果。
JS可以直接嵌入到html代碼中進(jìn)行解析執(zhí)行,
非常簡(jiǎn)單易學(xué),可以產(chǎn)生很多動(dòng)態(tài)的效果。
形象比較:JS是在客戶端執(zhí)行的,需要瀏覽器支持JavaScript。JSP是在服務(wù)器端執(zhí)行的,
需要服務(wù)器上部署支持Servlet的服務(wù)器程序。JS代碼能夠直接從服務(wù)器
上download得到,對(duì)外是可見的,jsp(和翻譯后的Servlet代碼)是對(duì)外不可見的。
JS和JSP相比較:雖然JS可以再客戶端動(dòng)態(tài)生成HTML,但是很難與服務(wù)器交互,因此不能提供復(fù)雜
的服務(wù)。
如:訪問數(shù)據(jù)庫(kù)和圖像處理等等。
JSP在HTML中用<% %>里面實(shí)現(xiàn)。JS在HTML中用<Scrippt></Script>實(shí)現(xiàn)。
執(zhí)行過程:
JSP:
1、JSP文件在用戶第一次請(qǐng)求時(shí),會(huì)被編譯成Servlet,然后由這個(gè)Servlet處理
用戶的請(qǐng)求,所以Servlet可以看成是運(yùn)行時(shí)的Servlet。
2、JSP容器也就是Servlet容器管理JSP頁(yè)面生命周期分為兩個(gè)階段,即轉(zhuǎn)換階段和執(zhí)行階段。
3、轉(zhuǎn)換階段:當(dāng)有一個(gè)對(duì)JSP頁(yè)面的請(qǐng)求到來時(shí),JSP容器檢查JSP頁(yè)面的語(yǔ)法是否正確,將JSP頁(yè)面
轉(zhuǎn)換為Servlet源文件,然后調(diào)用javac命令編譯Servlet源文件生成字節(jié)碼文件。
4、執(zhí)行階段:Servlet容器加載轉(zhuǎn)換后的Servlet類。
JS:
JavaScript 通常是運(yùn)行在前臺(tái),即運(yùn)行于用戶瀏覽器的,通常不需要服務(wù)器的后臺(tái)支持(AJAX交
互例外),混合在HTML中的JavaScript腳本程序直接被瀏覽器解釋執(zhí)行,以提高頁(yè)面的美觀性和
UI操作響應(yīng)速度為基本目標(biāo)。(運(yùn)行位置的不同)
運(yùn)行位置不同:
JSP運(yùn)行在后臺(tái)服務(wù)器上,混合在HTML中的java程序段用于控制HTML的動(dòng)態(tài)生成,并且通常負(fù)責(zé)調(diào)用后臺(tái)
數(shù)據(jù)庫(kù)中的數(shù)據(jù),形成能夠根據(jù)使用情況的變化的,具有豐富數(shù)據(jù)交互效果的頁(yè)面。
轉(zhuǎn)自:http://www.cnblogs.com/ForeverLover/archive/2015/03/08/4321372.html
總結(jié)
以上是生活随笔為你收集整理的JS和JSP的区别?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux解压rar文件(unrar安装
- 下一篇: JS起源及发展历史