JavaBeans

JavaBeans事實上有三層含義。首先,JavaBeans是一種規範,一種在Java(包括JSP)中可重複使用的Java組件的技術規範,也可以說成我們常說的接口。其次,JavaBeans是一個Java的類,一般來說,這樣的Java類將對應於一個獨立的 .java檔案 ,在絕大多數情況下,這應該是一個public類型的類。最後,當JavaBeans這樣的一個Java類在我們的具體的Java程式中被實例之後,這就是我們面向對象的對象,我們有時也會將這樣的一個JavaBeans的實例稱之為JavaBeans。總之,就是Java中的接口、類和對象。

前言

學習JSP,不可避免地你會接觸到JavaBeans,對於一個沒有太多Java基礎的學習者來說,要正確理解JavaBeans實在不是一件太容易的事。在本文中,我們將對JavaBeans作一個整體的介紹,作為這樣的一個介紹,我們可能不會涉及到某些技術上的細節。我們只是希望,無論是對於對JavaBeans有一定了解的人,還是對於剛接觸JavaBeans的人,在閱讀過本文後,能夠對JSP中的JavaBeans有一個整體的把握。

介紹

JavaBean是Sun微系統的一個面向對象的編程接口,它可以讓你建可重用的應用程式或能在網路中任何主流作業系統平台上配置的程式塊,稱作組件。像Java applet一樣,JavaBeans組件(或“Beans”)能夠給予全球資訊網頁面互動的能力,例如:計算感興趣的比率或是根據用戶或瀏覽器的特性改變頁面內容。
從用戶的觀點來看,組件可以是一個與你互動的按鈕或是一個當你按下按鈕它便開始的小計算程式。從一個開發者的觀點來看,那個按鈕組件和計算器組件是分別被創建的,並且他們可以一起使用或是在不同的應用程式或情況下和不同的組件產生不同的組合來使用。
當組件或Beans在使用過程中,Bean的性質(比如,一個視窗的背景色)對於其他Bean來說是可見的,並且,之前沒“碰到”過的Bean也可以動態地獲悉彼此的特性並從而進行互動。

優缺點

從原理上來說,使用JavaBeans不過是使用一種特定的規範在Java程式中引入特定的類。你完全可以不使用JavaBeans而直接在Java程式中對這樣的Java類進行說明並進行示例。當然,這無疑會降低你的程式的可讀性,而且你將犧牲組件的可重複使用的特性。但是,對於一個簡單的套用中的簡單程式。你完全可以不必拘泥於使用JavaBeans。即便是對於JSP,你也可以做同樣的選擇,我們知道,在“”引起的程式段中,我們可以使用任何的純Java語句,包括對一個新的對象的定義和示例。正如我們前面提到的,使用JavaBeans你可以充分利用組件的可重複使用的特性並增加你的程式的可讀性。當你的套用日趨龐大時,你會發現,遵守這樣的規範所帶來的在開發和維護中的便利,相對於你所受到的約束,你完全值得做這樣的交換。

規定

在很多的JSP參考資料中都提到JavaBeans需要遵守JavaBeans規定,也就是JavaBeansAPI。但是,事實上在程式設計時,情況並沒有這么複雜。你完全可以根據你自己的需要來定製你的JavaBeans。在這裡,我們只要求JavaBeans是一個Java類,並不需要遵守其他規範。當然,對於這樣的一個JavaBeans,你應該自己有一個清楚的認識。因為它可能並沒有我們通常意義上所理解的JavaBeans的一些特性,對於某種極端的情況,你可能只能使用這樣的語句來引入JavaBeans,然後來通過yourId這個JavaBeans的實例來處理並調用你的JavaBeans中的屬性和方法。

實質

我們注意到,一個引入JavaBeans的語句,其結構應該是,在這當中,我們必須對三個方面的內容進行定義。首先是一個id,這將對應於一個類的實例,如果這個實例已經存在,將直接引用這個實例;如果這個實例尚未存在,將通過我們在class中的定義從這個class中進行示例。這也就是我們要定義的第二個內容。最後,我們還應該在scope中定義id這個實例存在的範圍,事實上這定義了這個實例所綁定的區域及其有效範圍。

1、page:這個JavaBeans將存在於該JSP檔案以及此檔案中的所有靜態包含檔案中,直到頁面執行完畢為止。這將基本等價於JSP中這樣的Java語句。

2、request:這個JavaBeans將作為一個對象綁定於該頁面的request中。簡單地說該JavaBeans在該頁面發出的請求中有效,這將基本等價於JSP中這樣的Java語句。

3、session:這個JavaBeans將作為一個對象綁定於session中。簡單地說該JavaBeans在本地有效,這將基本等價於JSP中這樣的Java語句。

4、application:這個JavaBeans將作為一個對象綁定於application中。簡單地說該JavaBeans在本套用中有效,這將基本等價於JSP中這樣的Java語句。

相關詞條

相關搜尋

熱門詞條

聯絡我們