jsp編譯器指引與指令元件有五種型態(tài).在jsp 1.0之后,大部分的jsp是包含在以<% 作為開(kāi)始%>作為結(jié)束的單一標(biāo)簽里.新的 jsp 1.1規(guī)格已經(jīng)發(fā)表了,它同時(shí)也與xml相容.
五種jsp的編譯器指引如下所示:
1 編譯器指引 <%@ 編譯器指引 %>
2 預(yù)定義 <%! 預(yù)定義 %>
3 運(yùn)算式 <%= 運(yùn)算式 %>
4 程序代碼 <% 程序代碼 %>
5 注解 <%-- 注解 --%>
下面我們分析一個(gè)簡(jiǎn)單的 jsp 頁(yè)面。您可以在 jswdk 的 examples 目錄下創(chuàng)建另外一個(gè)目錄存放此文件,文件名字可以任意,但擴(kuò)展名必須為 .jsp 。從下面的代碼清單中可以看到, jsp 頁(yè)面除了比普通 html 頁(yè)面多一些 java 代碼外,兩者具有基本相同的結(jié)構(gòu)。 java 代碼是通過(guò) < % 和 %> 符號(hào)加入到 html 代碼中間的,它的主要功能是生成并顯示一個(gè)從 0 到 9 的字符串。在這個(gè)字符串的前面和后面都是一些通過(guò) html 代碼輸出的文本。
< html>
< head>< title>jsp 頁(yè)面 < /title>< /head>
< body>
< %@ page language="java" %>
< %! string str="0"; %>
< % for (int i=1; i < 10; i++) {
str = str + i;
} %>
jsp 輸出之前。
< p>
< %= str %>
< p>
jsp 輸出之后。
< /body>
< /html>
這個(gè) jsp 頁(yè)面可以分成幾個(gè)部分來(lái)分析。
首先是 jsp 指令。它描述的是頁(yè)面的基本信息,如所使用的語(yǔ)言、是否維持會(huì)話狀態(tài)、是否使用緩沖等。 jsp 指令由 < %@ 開(kāi)始, %> 結(jié)束。在本例中,指令“ < %@ page language="java" %> ”只簡(jiǎn)單地定義了本例使用的是 java 語(yǔ)言(當(dāng)前,在 jsp 規(guī)范中 java 是唯一被支持的語(yǔ)言)。
接下來(lái)的是 jsp 聲明。 jsp 聲明可以看成是定義類(lèi)這一層次的變量和方法的地方。 jsp 聲明由 < %! 開(kāi)始, %> 結(jié)束。如本例中的“ < %! string str="0"; %> ”定義了一個(gè)字符串變量。在每一項(xiàng)聲明的后面都必須有一個(gè)分號(hào),就象在普通 java 類(lèi)中聲明成員變量一樣。
位于 < % 和 %> 之間的代碼塊是描述 jsp 頁(yè)面處理邏輯的 java 代碼,如本例中的 for 循環(huán)所示。
最后,位于 < %= 和 %> 之間的代碼稱(chēng)為 jsp 表達(dá)式,如本例中的“ < %= str %> ”所示。 jsp 表達(dá)式提供了一種將 jsp 生成的數(shù)值嵌入 html 頁(yè)面的簡(jiǎn)單方法。
中國(guó)最大的web開(kāi)發(fā)資源網(wǎng)站及技術(shù)社區(qū),新聞熱點(diǎn)
疑難解答
圖片精選