明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

JSP開(kāi)發(fā)基礎(chǔ)(3)--JSP與JavaBean 

[摘要]雖然你可以在小型指令文件里放入一大塊的程序代碼,但是大多數(shù)的Java程序代碼是屬于可以重復(fù)使用的組件,稱(chēng)為JavaBean。JavaBean就跟ActiveX控件一樣:它們提供已知的功能,并且是為了可隨時(shí)重復(fù)使用的目的而設(shè)計(jì)的。   JavaBean的價(jià)值在于它可以經(jīng)由一組特性來(lái)使用,而這些特性則...
雖然你可以在小型指令文件里放入一大塊的程序代碼,但是大多數(shù)的Java程序代碼是屬于可以重復(fù)使用的組件,稱(chēng)為JavaBean。JavaBean就跟ActiveX控件一樣:它們提供已知的功能,并且是為了可隨時(shí)重復(fù)使用的目的而設(shè)計(jì)的。

  JavaBean的價(jià)值在于它可以經(jīng)由一組特性來(lái)使用,而這些特性則提供對(duì)JavaBean設(shè)定的存取。以人來(lái)作范例,此人就是JavaBean,而他的姓名,社會(huì)福利安全號(hào)碼,以及住址可以是特性。對(duì)于JSP網(wǎng)站,基本上你是將'JavaBean'動(dòng)態(tài)的連接到你的網(wǎng)站。

  假設(shè)JavaBean是在建立網(wǎng)站之前建好的,你要做的第一件事是告訴JSP網(wǎng)頁(yè)它所需要使用JavaBean.這工作可以用<jsp:useBean>卷標(biāo)來(lái)完成:<jsp:useBean id="localName" class="com.jguru.Person" scope="application" />.

  <jsp:useBean>卷標(biāo)需要你以id 屬性來(lái)辨識(shí)豆子.在這里,你提供一個(gè)名稱(chēng)讓JSP網(wǎng)頁(yè)來(lái)辨識(shí)豆子,除了id 屬性之外,你也必須告訴網(wǎng)頁(yè)要到哪里去找這個(gè)豆子,或者是它的Java類(lèi)別名稱(chēng)。類(lèi)別屬性提供如何在各式方法之中找到它,最后一個(gè)需要的組件是scope 屬性.有了范圍屬性的幫助,你可以告訴豆子,要它為單一網(wǎng)頁(yè)(預(yù)設(shè))[scope="page"];為一個(gè)被請(qǐng)求的網(wǎng)頁(yè)[scope="request"];為通話(huà)期[scope="session"];或?yàn)檎麄(gè)應(yīng)用程序[scope="application"]來(lái)維護(hù)它自己的信息.對(duì)于通話(huà)期范圍,你可以很容易的維護(hù)JSP網(wǎng)頁(yè)里的項(xiàng)目,例如購(gòu)物車(chē)。

  一但你宣告了JavaBean之后,你就可以存取它的特性來(lái)訂定它。要取得一特性的值,使用<jsp:getProperty>卷標(biāo)。有了<jsp:getProperty>卷標(biāo),你可以指定要使用的豆子名稱(chēng)(從useBean的id字段),以及你要取得值的特性。接著,真正的值就會(huì)放在輸出里:<jsp:getProperty id="localName" property="name" />.

  要更改JavaBean的特性,你需要使用<jsp:setProperty>卷標(biāo).對(duì)這個(gè)卷標(biāo),你也需要辨認(rèn)豆子以及要修正的特性,除此之外,你還需要提供新值.如果命名正確,這些可以直接經(jīng)由規(guī)定的格式取得:<jsp:setProperty id="localName" property="*" />; 

  要從一參數(shù)取得,你必須直接命名此特性以及參數(shù): <jsp:setProperty id="localName" property="address" param="parameterName" />; 

  或是直接以名稱(chēng)與值來(lái)設(shè)定: <jsp:setProperty id="localName" property="serialNumber" value="string" /> or <jsp:setProperty id="localName" property="serialNumber" value= <%= expression %> />.

  有關(guān)JavaBean的最后一點(diǎn):要讓網(wǎng)絡(luò)服務(wù)器可以找到JavaBean,你需要將它們的類(lèi)別檔案放在特別位置。對(duì)JSWDK而言,最簡(jiǎn)單的地方是在安裝目錄里的類(lèi)別目錄,例如 \jswdk-1.0.1\classes.