你大娘已經(jīng)不是你從前的大娘,你大爺依舊是你大爺 |
一、JSP的演變過程
早期JSP出現(xiàn)之前,所有網(wǎng)頁都是基于HTML所編寫出來,用戶訪問一個(gè)站點(diǎn)流程:
由于WEB服務(wù)器的功能限制,其存儲(chǔ)器中只能存儲(chǔ)數(shù)量有限的靜態(tài)HTML頁面,維護(hù)及其不便,CGI(Common Gateway Interface 公共網(wǎng)關(guān)接口)誕生:
到此表面上似乎CGI已經(jīng)很完美,但是當(dāng)多個(gè)用戶同時(shí)訪問該CGI的時(shí)候,其缺陷就會(huì)暴露無遺:每個(gè)用戶的請(qǐng)求,操作系統(tǒng)都會(huì)開辟一個(gè)進(jìn)程,帶來很大開銷,基于Java平臺(tái)可以在運(yùn)行時(shí)動(dòng)態(tài)加載類,servlet誕生:
從上圖可以很容易的看出servlet的缺點(diǎn)--繁瑣,程序員每次要維護(hù)網(wǎng)站,都必須對(duì)sevlet源碼進(jìn)行修改,然后編譯,部署,測(cè)試,JSP誕生:
JSP優(yōu)點(diǎn):
1. 提供模板機(jī)制,事實(shí)上JSP就是帶有一些特殊標(biāo)記(稱為:模板)的HTML頁面;
2. 只要JSP有修改,JSP容器會(huì)自動(dòng)檢測(cè)和重新編譯。
一、第一個(gè)JSP
1. 安裝環(huán)境:
安裝前先確保已經(jīng)安裝JDK(下載),進(jìn)行簡(jiǎn)單的配置后便可安裝Tomcat,配置方法網(wǎng)上有很多介紹,在此不再贅述。Tomcat安裝完成后安裝開發(fā)工具,在這我選擇Myeclipse AllInOne版(下載),安裝Myeclipse有一個(gè)過程很漫長(zhǎng),耐心等待.(本人非常支持正版,但網(wǎng)上有很多注冊(cè)碼),安裝完在Myeclipse中對(duì)Tomcat進(jìn)行配置,同樣配置教程網(wǎng)上有很多,不再贅述。
2. 創(chuàng)建一個(gè)JSP看看效果:
運(yùn)行Myeclipse->File->New->Web Project起名HelloProject,展開項(xiàng)目看看都有些什么:
其中有個(gè)index.jsp這就是我們這個(gè)項(xiàng)目的入口,雙擊index.jsp打開將原來的程序替換為下面的程序(看不懂沒關(guān)系,復(fù)制粘貼就可以):
<%@taglib prefix="CoffeeTree" tagdir="/WEB-INF/tags"%>
<html>
<head>
<title>My first jsp</title>
</head>
<body>
<h1>This is my first jsp page</h1><hr>
I want to say:<CoffeeTree:hello/>
</body>
</html>
在WEB-INF目錄下新建文件夾tasgs,在tags目錄下新建文本文件hello.tag,在hello.tag中寫入:<b>hello everyone!</b>
啟動(dòng)Tomcat,通過剛才配置的Tomcat發(fā)布該項(xiàng)目(如何發(fā)布網(wǎng)上介紹很多),打開瀏覽器,在地址欄輸入:http://localhost:8080/HelloProject如果顯示如下,那么恭喜你的第一個(gè)JSP創(chuàng)建成功了!
3. 上面程序的解釋:
前面提過其實(shí)JSP就是一個(gè)帶有特殊標(biāo)簽的HTML頁面,特殊標(biāo)簽什么意思呢?就是指不是HTML定義的標(biāo)簽,JSP將這些特殊標(biāo)簽放在一個(gè)叫“標(biāo)簽庫(kù)”的地方:
<%@taglib prefix="CoffeeTree" tagdir="/WEB-INF/tags"%>
上面這句話就是告訴JSP解釋器,這張JSP中要用到些標(biāo)簽的定義所在,并且告訴JSP解釋器,這些標(biāo)簽有個(gè)標(biāo)記CoffeeTree,即所有標(biāo)簽前面都有個(gè)標(biāo)記,如:<CoffeeTree:hello/>,tagdir告訴標(biāo)簽放在什么地方,即WEB-INF下tags目錄下。當(dāng)JSP解釋器遇到該標(biāo)簽的時(shí)候就通過該路徑找到標(biāo)簽的定義,并按照定義的約定去解釋。
只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。 | ||
![]() |
||
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
|
||
相關(guān)文章:
|
||