隨著web技術的發展,web內容從一些靜態的頁到內容豐富的動態頁。對於廣大web開發人員來講動態頁面的生成是乙個挑戰。有許多的方法來試**決這個問題,如plug-in技術及基於伺服器端的apis等方法,但存在的乙個www.cppcns.com問題是這些方法是針對某個特定的web伺服器,如microsoft提供的asp技術就只針對它的iis及personal web伺服器。
目前用於生成動態網頁較為流行的方法有cgi、php及j**aserver page(jsp)技術等。其中:cgi通過訪問其它應用程式來獲取資訊並返回給瀏覽器,cgi程式通常用c或perl語言來開發;jsp則通過將jsp元件編譯成j**a servlet在伺服器端執行來實現動態內容。下面從幾個方面比較jsp與傳統cgi的特性:
可移植性:
大多web伺服器支援cgi介面,但cgi程式自身並不能跨平台執行; j**a servlet程式則具有j**a程式的優點,可執行在任何平台之上,大多數web及應用伺服器都支援j**a及servlet api。
效能上:
傳統的cgi環境下,每一次client對cgi程式的請求,都使伺服器產生乙個新的程序來裝載、執行cgi程式。大量的並行請求大大降低了其效能;jsp則沒有這個侷限,每個程式裝載一次,並駐留在伺服器記憶體為以後請求服務。另外jsp在多執行緒的編寫與控制方面比cgi容易得多。
開發及發布:
由於j**a servelt具有j**a的所有優點,開發起來也相對容易,j**a簡化了對異常的處理;它的物件導向特性使開發人員的協作成為一件簡單的事。jsp技術從如下幾個方面加快動態**開發:
1) 將靜態頁面的開發和動態內容的生成分開
jsp中通過使用html或xml標記來規劃、設計web頁的布局和風格;而用jsp標記來實現動態的內容,生成動態內容的部分被封裝起來執行於伺服器端;這樣頁面布局和風格可單獨編輯與除錯而不影響動態內容生成。
2) 元件的重用
多數jsp頁通過重用無平台無關的元件—j**abeans來完成複雜的要求。這些元件可在開發人員中重複使用。
3) 通過標記來www.cppcns.com簡化頁面開發
通過jsp提供了標記,開發人員可以很容易使用beans元件,設定和訪問它們的屬性。同時jsp也允許使用者自定義標記,還可接受第三方開發的標記,從而可以方便使用第三方提供的功能元件。
在對jsp的特點有所了解之後,接下來就談談jsp的安裝與開發例項。(作業系統以nt4.0為例)
為執行jsp page需要安裝jdk及jswdk。首先安裝jdk,在jdk安裝完成後,要確保j**ac及j**a能正常工作。然後安裝jswdk,實際上只需把jswdk解壓到乙個目錄即可。為了使jswdk正常執行,還需要對環境變數classpath做如下修改:
如果使用jdk1.1,則不需修改classpath;如果使用jdk1.2,則設定環境變數j**a_home,使其指向jdk安裝路徑。
完成上述工作後,就可以啟動j**a webserver了。
執行jswdk目錄下的startserver.bat檔案來啟動j**a server,該web server使用的預設埠為8080。如果web server新動後,需要重新啟動則需要先停止已啟動的web server,執行stopserver.bat可停止達到此目的。
j**aserver啟動後,如果正常則在瀏覽器的位址中輸入:http://localhost:8080/ 就可顯示介紹j**a webserver page的頁面。在jswdk目錄下還有乙個examples目錄,這是jswdk中自帶的乙個web 應用, 乙個web應用包含jsps, servlets,html files, images等資源。我們也可以建立乙個新的web應用,從而把自己相關的檔案放入其中。讓我們來分析一下如何建立乙個新的web 應用。
要建立乙個新的web 應用,需要在jswdk安裝目錄下新建乙個目錄,如建立乙個名為myweb的web應用,其目錄結構如下:
jswdk_inatall myweb web-inf
servlets
jsp beans
webapp.properties
servlets.properties
mime.properties
mappings.properties
其中:jswdk_install表示jswdk的安裝目錄;以properties為字尾的四個檔案為屬性檔案,可從jswkd_install/web-inf下拷貝得到。修改jswdk_install目錄下的webserver.xml檔案,加入如下一行,其作用是把myapp作相應的對映:
同時修改startserver.bat檔案,把 myweb/web-info/jsp/beans目錄加到相應的環境變數beanjars中;也可通過在classpath環境變數中加入該路徑來實現。
要加入jsp檔案,可把檔案放到myweb目錄下或它的下一級目錄中;要加入servlet,只需把編譯正確的servlet放到servlets中;而把編譯正確的j**a beans放到beans目錄下。
請注意在對beans或servlet修改後,要使修改生效,需要重新啟動web server。
了解這些規則之後,下面就建立第乙個jsp檔案 myfirst.jsp,其內容如下:
my first jsp file
&azkazyosxjlt;body>
jsp生成靜態html頁面
菜鳥研究一下生成靜態頁面,因為我是看著api來翻譯的,所以如果有不對的話請指出來 引數requestpageurl想要生成html的jsp檔案路徑 如 frontstage articlemenucontent.jsp 這是實際存在的jsp檔案 同時我看了一些api想找到只需要傳過來乙個action...
jsp生成靜態html頁面
1.j a 哈哈,注釋有點多,其實 就50行不到.給點耐心就行.在action中呼叫這個方法就可以 菜鳥研究一下生成靜態頁面,因為我是看著api來翻譯的,所以如果有不對的話請指出來 引數requestpageurl想要生成html的jsp檔案路徑 如 frontstage articlemenuco...
JSP頁面快取cache技術
一 概述 快取的思想可以應用在軟體分層的各個層面。它是一種內部機制,對外界而言,是不可感知的。資料庫本身有快取,持久層也可以快取。比如 hibernate,還分1級和2級快取 業務層也可以有快取 但一般來說,這是乙個過程域,不會設快取 表現層 資料服務層 傳統web的表現層 也可以設定快取 jsp ...