熊毅
摘 要 JavaBean是視同Java語(yǔ)言描述的軟件組件模型,簡(jiǎn)單的說(shuō),他是一個(gè)可以重復(fù)使用的Iava類(lèi)。JavaBean可分為可視化組件和非可視化組件,其中可視化組件包括簡(jiǎn)單的GUI遠(yuǎn)足及一些報(bào)表組件等。非可視化組件就是沒(méi)有GUI圖形用戶界面的JavaBean主要用來(lái)封裝業(yè)務(wù)邏輯、數(shù)據(jù)庫(kù)操作等。
關(guān)鍵詞 JavaBean 可視化 圖形 邏輯
中圖分類(lèi)號(hào):TN919.1 文獻(xiàn)標(biāo)識(shí)碼:A
1為何使用JavaBean
JavaBean具有以下幾種優(yōu)勢(shì):
(1)實(shí)現(xiàn)代碼的重復(fù)使用。在世紀(jì)開(kāi)發(fā)過(guò)程中,出現(xiàn)重復(fù)的代碼或程序是免除不了的!但是這會(huì)很大程度的降低可重用性,并且會(huì)浪費(fèi)大量的時(shí)間,但是使用JavaBean就不會(huì)存在這種問(wèn)題。
(2)程序容易編寫(xiě)。JavaBean是Java程序的一種,所使用的語(yǔ)法與普通的Java程序完全一致,完全是勇Java語(yǔ)言編寫(xiě)的,可以在安裝了Java運(yùn)行環(huán)境平臺(tái)上使用,而不需要重新編譯。
(3)降低網(wǎng)站系統(tǒng)耦合度。一個(gè)網(wǎng)站系統(tǒng)一般分為數(shù)據(jù)層、商務(wù)層、和應(yīng)用層、如果出現(xiàn)大量用戶放穩(wěn),將會(huì)很快達(dá)到功能上線,另外純用腳本語(yǔ)言將應(yīng)用層和上午層混在一起,耦合度高,修改將會(huì)極不方便。
(4)系統(tǒng)維護(hù)方便。舉一個(gè)簡(jiǎn)單的例子,比如一個(gè)購(gòu)物車(chē)程序,要實(shí)現(xiàn)向購(gòu)物車(chē)中添加一件商品這樣的功能,可以寫(xiě)一個(gè)購(gòu)物車(chē)操作的JavaBean,建立一個(gè)Public和Additem成員方法,在前臺(tái)JSP文件中直接調(diào)用這個(gè)方法來(lái)實(shí)現(xiàn)。如果以后考慮到添加商品時(shí)需要先判斷庫(kù)存是否有貨,沒(méi)有貨不得購(gòu)買(mǎi),此時(shí)就可以直接修改JavaBean而不用完全修改前臺(tái)的JSP程序了。
2 JavaBean基本結(jié)構(gòu)組成
JavaBean的基本機(jī)構(gòu)分為屬性、方法和事件三部分。
JavaBean的屬性用于描述JavaBean的狀態(tài),如顏色、大小第二個(gè),與普通的Java程序中的屬性在概念上非常相似。按照不同的作用又可以分為四類(lèi),分別是簡(jiǎn)單屬性,索引屬性、束縛屬性、限制屬性。
一個(gè)簡(jiǎn)單屬性表示一個(gè)伴隨一堆get/set方法的變量。屬性名與該屬性相關(guān)的get/set方法名對(duì)應(yīng)。
索引屬性表示一個(gè)數(shù)組值,使用與該屬性對(duì)應(yīng)的set/get方法可以去的數(shù)組中的數(shù)值。該屬性也可一次設(shè)置或取得整個(gè)數(shù)組的值。
束縛屬性是指當(dāng)該屬性的值發(fā)生變化時(shí),要通知其他的對(duì)象。每次屬性值改變時(shí),這種屬性就出發(fā)一個(gè)PropertyChange事件。事件中封裝了屬性名、屬性的原值、屬性變化后的新值。這種時(shí)間傳遞到其他的Bean,至于接受事件的Bean應(yīng)該做什么動(dòng)作由自己定義。也就是說(shuō)Bound屬性提供了一種機(jī)制,即通知監(jiān)聽(tīng)器一個(gè)javaBean組件的屬性發(fā)生了改變。
限制屬性是指當(dāng)這個(gè)屬性的值要發(fā)生變化時(shí),與這個(gè)屬性建立了某種連接的其他Java對(duì)象可否決屬性值的改變。
3 JavaBean的作用領(lǐng)域
JavaBean對(duì)象的有效范圍是客戶端請(qǐng)求訪問(wèn)的當(dāng)前頁(yè)面文件,當(dāng)客戶端執(zhí)行完成當(dāng)前的頁(yè)面文件后,JavaBean對(duì)象結(jié)束生命,在PAPE范圍內(nèi),每次訪問(wèn)頁(yè)面文件是都會(huì)生成新的JavaBean對(duì)象,原有的對(duì)象已經(jīng)結(jié)束了生命周期。在WEB開(kāi)發(fā)中,程序員不僅可以自定義JavaBean還可以使用現(xiàn)成的第三方JavaBean組件擴(kuò)充WEB系統(tǒng),增強(qiáng)程序的功能。WEB應(yīng)用經(jīng)常需要與用戶進(jìn)行信息交流,如上傳下載文件等操作,這些功能的實(shí)現(xiàn)主要依賴于JavaBean組件。
4總結(jié)
JavaBean與容器之間得通信機(jī)制是通過(guò)事件進(jìn)行信息的傳遞,事件從原聽(tīng)眾注冊(cè)或發(fā)表,并通過(guò)方法調(diào)用傳遞到一個(gè)或幾個(gè)目標(biāo),事件有許多不同的用途,可擴(kuò)充事件機(jī)制,這種機(jī)制能夠?qū)崿F(xiàn)多重功能,計(jì)算機(jī)的巨大發(fā)展是我們有目共睹的,計(jì)算機(jī)為我們的帶來(lái)的生活方式、工作方式的革新是具有歷史意義的。與此同時(shí),開(kāi)發(fā)好的計(jì)算機(jī)軟件,并且對(duì)其進(jìn)行有效的管理是必要的。我們應(yīng)當(dāng)對(duì)計(jì)算機(jī)軟件開(kāi)發(fā)制定合理的規(guī)范,使其朝著健康良好的方向發(fā)展,從而造福人類(lèi),為我們帶來(lái)經(jīng)濟(jì)效應(yīng)的同時(shí)能夠持續(xù)發(fā)展。
參考文獻(xiàn)
[1] 陳宏.計(jì)算機(jī)軟件開(kāi)發(fā)與數(shù)據(jù)庫(kù)管理[J].宜賓職業(yè)技術(shù)學(xué)院,2009(01):201.
[2] 蘇延平.計(jì)算機(jī)軟件開(kāi)發(fā)與數(shù)據(jù)庫(kù)管理中的問(wèn)題及策略[J].泉州信息工程學(xué)院,2015(05):94.
[3] 杜金超.淺談?dòng)?jì)算機(jī)軟件開(kāi)發(fā)與數(shù)據(jù)庫(kù)管理[J].計(jì)算機(jī)應(yīng)用技術(shù),2015(3).
[4] 柳繼.淺談?dòng)?jì)算機(jī)軟件開(kāi)發(fā)與數(shù)據(jù)庫(kù)管理[J].沈陽(yáng)廣播電視大學(xué),2013(09):365.