本教學將闡述JavaBean的原理,接著將闡述JavaBean在JavaServer Page下的特定語法,然後示範一個使用Jsp+JavaBean的簡單的計數器,最後將詳細的講解一個有資料庫功能的JavaBean+jsp的使用者註冊程式。
Java Bean原理與應用
1、什麼是JavaBean?
JavaBean是描述Java的軟體元件模型,有點類似Microsoft的COM元件概念。在Java模型中,透過JavaBean可以無限擴充Java程式的功能,透過JavaBean的組合可以快速的產生新的應用程式。對程式設計師來說,最好的一點就是JavaBean可以實現程式碼的重複利用,另外對於程式的易維護性等等也有很重大的意義。
JavaBean透過Java虛擬機器(Java Virtual Machine)可以得到正確的執行,而運行JavaBean最小的需求是JDK1.1或以上的版本。
JavaBean傳統的應用在於可視化的領域,如AWT下的應用。自從Jsp誕生後,JavaBean更多的應用在了非視覺化領域,在伺服器端應用方面表現出來了越來越強的生命力。這裡我們主要討論的是非視覺化的JavaBean,可視化的JavaBean在市面上有很多Java書籍都有詳細的闡述,在這裡就不作為重點了。
2.非視覺化的JavaBean
非視覺化的JavaBean,顧名思義就是沒有GUI介面的JavaBean。在Jsp程式中常用來封裝事務邏輯、資料庫操作等等,可以很好地實現業務邏輯和前台程式(如jsp檔案)的分離,使得系統具有更好的健壯性和靈活性。
一個簡單的例子,比如說一個購物車程序,要實現購物車中添加一件商品這樣的功能,就可以寫一個購物車操作的JavaBean,建立一個public的AddItem成員方法,前台Jsp文件裡面直接調用這個方法來實現。如果後來又考慮添加商品的時候需要判斷庫存是否有貨物,沒有貨物不得購買,在這個時候我們就可以直接修改JavaBean的AddItem方法,加入處理語句來實現,這樣就完全不用修改前台jsp程序了。
當然,也可以把這些處理操作完全寫在jsp程式中,不過這樣的jsp頁面可能就有成百上千行,光看程式碼就是一個頭痛的事情,更不用說修改了。如果您使用過asp開發過程式的話,相信對這就深有體會? 涫凳褂肁SP+COM組件完全可以實現同jsp+javabean同樣的架構,但不知道某種原因網上常見的都是全部寫在asp頁中,所以使得維護修改等極為不方便,當然這是題外話了)。由此可見,透過JavaBean可以很好地實現邏輯的封裝、程式的易於維護等等。
如果您使用Jsp開發程序,一個很好的習慣就是多使用JavaBean。
3.JavaBean的簡單範例
建立JavaBean並不是一件困難的事情,如果您寫過Java程式的話那就很容易了,要注意一點的就是在非視覺化JavaBean中,常用>get或>set這樣的成員方法來處理屬性>(properties>)。 >
下面讓我們來看一個簡單的JavaBean
FirstJavaBean.java import java.io.*; public class FirstJavaBean { private String FirstProperty = new String(""); public FirstJavaBean() { } public String getFirstProperty() { return FirstProperty; } public void setFirstProperty(String value) { FirstProperty = value; } public static void main(String[] args) { System.out.println("My First JavaBean!"); } } |
如果執行這個程序,就會出現下面的結果:
First JavaBean!
這是一個很典型的JavaBean的代表,簡單地解釋一下,FirstProperty是其中的一個屬性(Property),外部透過get/set方法可以對這個屬性進行操作,如果您寫過VB的class的話,對這個就再也熟悉不過了。 Main方法是為了測試程式用的,寫JavaBean可以先不必加入到Jsp程式中調用,而直接用main方法來進行調試,調試好以後就可以在Jsp程式中調用了。 (未完)