一、JavaBean簡介:JavaBean是一個可重復使用的軟件部分,應用JavaBean的主要目的是代碼重用,便于維護和管理。它實質上是一個類,具有如下特性: 1、JavaBean是公共和具體的類。 2、構造函數沒有輸入參數。 3、屬性必須聲明為private,方法必須聲明為public。 4、用一組set方法設置內部屬性。 5、用一組get方法獲取內部屬性。 6、JavaBean是一個沒有主方法的類,一般的Java類默認繼承自Object類,而Bean不需要這種繼承。 二、編寫JavaBean:同編寫Java類很相似,然后編譯成為一個class文件,此文件將被JSP程序進行調用。 例子程序:
三、JSP中使用JavaBean:JavaBean和JSP技術的結合不僅可以實現表現層和商業邏輯層的分離,而且可以提高JSP程序的運行效率和代碼重用程序,還可以實現并行開發,是JSP編程中常用的技術。在JSP中提供了<jsp:useBean>、<jsp:setProperty>和<jsp:getProperty>動作元素實現對JavaBean的操作。 1、<jsp:useBean>可以定義一個具有一定生存范圍以及一個唯一id的JavaBean的實例,JSP頁面通過指定的id來識別JavaBean,也可以通過id.method語句來調用JavaBean中的方法。在執行過程中,<jsp:usebean>首先嘗試尋找已經存在的具有相同id和scope值的JavaBean實例,如果沒有就會自動創建一個新的實例。其語法如下:
注:屬性scope之四種范圍: 頁面、 請求、 對話、 應用。 對話范圍: 對話范圍的JavaBean 主要應用與跨多個頁面和時間段: 例如填充用戶信息。 添加信息并且接受回饋,保存用戶最近執行頁面的軌跡。對話范圍JavaBean保留一些和用戶對話 ID 相關的信息。這些信息來自臨時的對話cookie,并在當用戶關閉瀏覽器時,這個cookie將從客戶端和服務器刪除。 頁面/請求范圍: 頁面和請求范圍的JavaBean有時類似表單 的bean , 這是因為 他們大都用與處理表單。表單需要很長的時間來處理用戶的輸入,通常情況下用于頁面接受HTTP/POST或者GET請求。另外頁面和請求范圍的bean可以用于減少大型站點服務器上的負載,如果使用對話bean,耽擱的處理就可能會消耗掉很多資源。 應用: 應用范圍通常應用于服務器的部件,例如 JDBC 連接池、應用監視、用戶計數和其他參與用戶行為的類。 在Bean中限制HTML的產生: 理論上,JavaBean 將不會產生任何HTML,因為這是jsp層負責的工作;然而,為了動態消息提供一些預先準備的格式是非常有用的。產生的HTML將被標注的 JavaBean方法返回。 這里有一些非常重要的事情: (1.)不要試圖在JavaBean返回的HTML中放置任何字體尺寸。 并不是所有的瀏覽器都相同。很多瀏覽器無法處理完整的字體尺寸。 (2).不要試圖在JavaBean返回的HTML中放置任何腳本或者DHTML。 向頁面直接輸出腳本或者DHTML相當于自我毀滅,因為某些瀏覽器版本在處理不正確的腳本時會崩潰(非常少但是有)。如果用戶的JavaBean在運行時是動態的推出復雜的HTML語言,用戶將陷入調試的噩夢。另外,復雜的HTML將限制JavaBean的壽命和靈活性。 (3).不要提供任何的選擇。 如果用戶使用不同的系統瀏覽頁面,可以提供一種可以替換的方法。 2、<jsp:setProperty>:可以設置Bean的屬性值,基本語法格式如下:
Powered by: BlogJava Copyright © 夢與橋