js
儘管你可以在Java的程式碼(scriptlets)中加入大量的代碼塊,但是,事實上大多數Java代碼都應該在可再利用的組件中使用,這些組件叫做JavaBeans。JavaBeans就象Activex控制項一樣:它們提供了被人們熟知的功能性和再利用的特性。
JavaBean的值通過一組屬性的定義而成為可利用的,這些屬性提供了訪問JavaBean的設定。拿一個人來作比方,把這個人當作一個JavaBean,那麼這個人的名字,社會保險號碼和住址就是他的屬性。在JSP的網站中,你主要是通過執行串連beans來動態訪問你的網站。
假設JavaBeans在創造網站之前就已經被構造,那麼首先你必須要讓你的JSP頁面知道你要使用一個bean。這個步驟由<jsp:useBean>標籤來完成:
<jsp:useBean id="localName" class="com.jguru.Person" scope="application" />.
<jsp:useBean>標籤需要你利用id的屬性來確定bean。在這裡你需要在靜態JSP頁面中提供一個名字來標識bean。除此之外,你必須告訴這個頁面去什麼地方找bean或者Java類的名字,類的屬性在其他少數的地方提供了這個資訊。最後必要的一個元素是scope屬性。在它的協助下,你可以利用beans來為一個頁面(the default) [scope="page"],請求[scope="request"],生存期限[scope="session"];或者整個應用[scope="application"]提供資訊,通過利用session scope,你可以在JSP頁面中添加其他的項目,比如購物卡之類。
一旦你定義了一個JavaBean,你就有權使用它的屬性來定義它。為了獲得一個適當的值,就要使用<jsp:getProperty>標籤,使用這個標籤你可以詳細的定義一個bean。它的實際指標將被放置在輸出中:
<jsp:getProperty id="localName" property="name" />.
如果想要改變JavaBean的屬性,你需要使用<jsp:setProperty>標籤,利用這個標籤你可以重新定義你的bean和屬性並提供新的值。如果要改變命名的屬性,這些可以直接從下面的形式中獲得:
<jsp:setProperty id="localName" property="*" />;
你可以從下面的形式中直接命名屬性和參數:
<jsp:setProperty id="localName" property="address" param="parameterName" />;
或者直接設定名字和值:
<jsp:setProperty id="localName" property="serialNumber" value="string" /> or <jsp:setProperty id="localName" property="serialNumber" value= <%= expression %> />.
最後一步就是:為了讓Web伺服器能夠找到JavaBeans,你需要在一個特別的地方放置它們的類檔案。利用JSWDK,最明了的地方就是在安裝目錄下建立一個類目錄,比如 \jswdk\-1.0.1\classes.