2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、第7章 JSP與JavaBean,本章主要內(nèi)容:JavaBean組件的開發(fā)在JSP中使用JavaBeanJavaBean的范圍通過JavaBean訪問數(shù)據(jù)庫,第7章 JSP與JavaBean,7.1 JavaBean介紹7.2 編寫JavaBean 7.3 JavaBean的范圍7.4 通過JavaBean訪問數(shù)據(jù)庫,7.1 JavaBean介紹,7.1.1 什么是JavaBean7.1.2 JavaBean的組成,,7

2、.1.1 什么是JavaBean,JavaBean是一段特殊的Java類,其最初的目的是為了將可以重復(fù)使用的軟件代碼打包,特別是用與幫助廠家開發(fā)在綜合開發(fā)環(huán)境(IDE)下使用的Java軟件部件,如今,JavaBean部件框架已經(jīng)擴展為企業(yè)版的 Bean(EJB)。 JSP和JavaBean結(jié)合使用是目前比較流行的Web開發(fā)技術(shù).,JavaBean一般分為可視化組件和非可視化組件兩種。通常一個標(biāo)準(zhǔn)的JavaBean具有以下特性。易于維

3、護、使用、編寫??蓪崿F(xiàn)代碼的重用性??梢浦残詮?,但僅限于Java工作平臺。便于傳輸,不限于本地還是網(wǎng)絡(luò)??梢砸云渌考哪J竭M行工作。,7.1.1 什么是JavaBean,,7.1.2 JavaBean的組成,一個JavaBean由3部分組成1.屬性(Properties)2.方法(Method)3.事件(Event),1.屬性(Properties)JavaBean提供了高層次的屬性概念,屬性在JavaBean中不只是

4、傳統(tǒng)的面向?qū)ο蟮母拍罾锏膶傩?,它同時還得到了屬性讀取和屬性寫入的API的支持。屬性值可以通過調(diào)用適當(dāng)?shù)腂ean方法進行。例如Bean有一個名字屬性,這個屬性的值可能需要調(diào)用String getName()方法讀取,而寫入屬性值可能要需要調(diào)用void setName(String str)的方法。,7.1.2 JavaBean的組成,2.方法(Method)JavaBean中的方法就是通常的Java方法,它可以從其他組件或在腳本環(huán)境中調(diào)

5、用。默認(rèn)情況下,所有Bean的公有方法都可以被外部調(diào)用,但Bean一般只會引出其公有方法的一個子集。由于JavaBean本身是Java對象,調(diào)用這個對象的方法是與其交互作用的唯一途徑。JavaBean嚴(yán)格遵守面向?qū)ο蟮念愒O(shè)計邏輯,不讓外部世界訪問其任何字段(沒有public字段)。這樣,方法調(diào)用是接觸Bean的唯一途徑。,7.1.2 JavaBean的組成,3.事件(Event)Bean與其他軟件組件交流信息的主要方式是發(fā)送和接受事

6、件。可以將Bean的事件支持功能看作是集成電路中的輸入輸出引腳:工程師將引腳連接在一起組成系統(tǒng),讓組件進行通訊。有些引腳用于輸入,有些引腳用于輸出,相當(dāng)于事件模型中的發(fā)送事件和接收事件。事件為JavaBean組件提供了一種發(fā)送通知給其他組件的方法。在AWT事件模型中,一個事件源可以注冊事件監(jiān)聽器對象。當(dāng)事件源檢測到發(fā)生了某種事件時,它將調(diào)用事件監(jiān)聽器對象中的一個適當(dāng)?shù)氖录幚矸椒▉硖幚磉@個事件。,7.1.2 JavaBean的組成,7

7、.2 編寫JavaBean,7.2.1 開發(fā)JavaBean組件7.2.2 在頁面中使用JavaBean組件,,7.2.1 開發(fā)JavaBean組件,JavaBean是一種組件技術(shù),可以將內(nèi)部的動作(如事務(wù)邏輯、數(shù)據(jù)庫操作等)封裝起來,用戶看不到它如何運行,它只提供最小限度的屬性接口供JSP程序使用,實現(xiàn)了業(yè)務(wù)邏輯和前臺程序的分離。操作的過程往往是先開發(fā)需要的JavaBean,再在適當(dāng)?shù)臅r候進行調(diào)用。JavaBean作為一個特殊的類

8、,具有自己獨有的特性,為了能讓使用這個Bean的應(yīng)用程序構(gòu)建工具(比如JSP引擎)知道這個Bean的屬性和方法,只需在類的方法命名上遵守以下規(guī)則:JavaBean類必須有一個沒有參數(shù)的構(gòu)造函數(shù)。JavaBean類所有的屬性最好定義為私有的(private)。Java類中方法的訪問屬性都必須是public的。JavaBean類中定義函數(shù)setXxx() 和getXxx()來對屬性進行操作。其中Xxx是首字母大寫的私有變量名稱。對

9、于boolean類型的成員變量,即布爾邏輯類型的屬性,允許使用“is”代替上面的“get”和“set”。,7.2.2 在頁面中使用JavaBean組件,JSP自身沒有實現(xiàn)HTML代碼與Java代碼的完全分離,網(wǎng)頁設(shè)計人員和Java編程人員需要操作同一個JSP文件,不易維護和管理。在JSP頁面中是通過操作指令:、和來應(yīng)用JavaBean的,它們分別用于創(chuàng)建和查找JavaBean的實例對象、設(shè)置JavaBean對象的屬性及讀取JavaBe

10、an對象的屬性。,1.指令指令用來定義生成和使用Bean的環(huán)境,即如果使用,就可以定義Bean的名稱、類型以及使用期限等內(nèi)容。在JSP頁面中,使用JavaBean前首先要聲明JavaBean。JavaBean的聲明通過動作來實現(xiàn),其語法格式如下:,7.2.2 在頁面中使用JavaBean組件,2.指令是設(shè)定通過定義的Bean對象屬性的標(biāo)記。的語法格式有以下4種。(1)字符串常量:(2)請求參數(shù):(3)匹配Bean中指定

11、的屬性:(4)表達式:"/>,7.2.2 在頁面中使用JavaBean組件,3.指令用于從一個JavaBean中獲取某個屬性的值,無論原來這個屬性是什么類型的,都將被轉(zhuǎn)換為一個String類型的值。其語法格式如下:,7.2.2 在頁面中使用JavaBean組件,7.3 JavaBean的范圍,7.3.1 page范圍7.3.2 request范圍7.3.3 session范圍7.3.4 applicati

12、on范圍,7.3.1 page范圍,page范圍的生命周期和作用范圍在4種類型的JavaBean 組件中是最小的。當(dāng)JavaBean的Scope 屬性被設(shè)為page時,表示該JavaBean的生命周期只在一個頁面內(nèi),即為JSP 程序的運行周期。當(dāng)JSP 程序運行結(jié)束,該JavaBean 組件的生命周期也就結(jié)束了。它無法在別的JSP程序中起作用,對應(yīng)于不同的客戶端請求服務(wù)器都會創(chuàng)建新的JavaBean 組件對象,而且一旦客戶端的請求執(zhí)行完

13、畢,該JavaBean 對象會馬上注銷,無法供別的客戶端請求使用。,7.3.2 request范圍,request范圍的生命周期和作用范圍與JSP 的Request 對象一樣,當(dāng)JavaBean的Scope屬性值被設(shè)為request時,表示JavaBean在整個請求的范圍內(nèi)都有效,而不僅僅在一個頁面內(nèi)有效。當(dāng)一個JSP 程序使用操作指令定向到另外一個JSP 頁面或使用操作指令導(dǎo)入另外的JSP頁面時,第一個JSP頁面會把Request

14、對象傳送到下一個JSP頁面,由于request范圍的JavaBean存在于Request對象中,因此,JavaBean對象也將隨著Request 對象送出,被第二個JSP 程序接收。這種類型的JavaBean對象使得JSP 程序之間傳遞信息更為容易。,7.3.3 session范圍,,session范圍的生命周期就是某個會話過程所經(jīng)歷的時間。當(dāng)JavaBean的Scope屬性值為session時,表示JavaBean可以在當(dāng)前HTTP會

15、話的生命周期內(nèi)被所有頁面訪問,該JavaBean存在于session對象中。實際上,會話過程是對于單個用戶而言的,會話過程的開始以用戶開始訪問某個網(wǎng)站為標(biāo)志,會話過程的結(jié)束以用戶結(jié)束對該網(wǎng)站的訪問為標(biāo)志。不同的用戶對應(yīng)著不同的會話過程,不同的會話過程之間是互不干涉互不影響。,7.3.4 application范圍,當(dāng)JavaBean 的Scope 屬性被指定為application時,它的生命周期和JSP 的Application 對

16、象具有相同的作用范圍,也和Application 對象一樣使用。這個JavaBean的生命周期是最長的,從創(chuàng)建了這個JavaBean開始,就可以在任何使用相同application的JSP文件中使用這個JavaBean。這種類型的JavaBean可以在多個用戶之間共享全局信息。,7.4 通過JavaBean訪問數(shù)據(jù)庫,7.4.1 連接數(shù)據(jù)庫7.4.2 實現(xiàn)對數(shù)據(jù)庫的操作,7.4.1 連接數(shù)據(jù)庫,在進行JSP應(yīng)用程序開發(fā)的時候,經(jīng)常需要

17、對數(shù)據(jù)庫進行查詢及增刪改,而這些操作使用的又是非常頻繁。因此,可以將操作數(shù)據(jù)庫的代碼封裝到一個JavaBean中。當(dāng)需要更改要訪問的數(shù)據(jù)庫時,只要修改JavaBean文件即可,這樣可以簡化開發(fā)過程,提高代碼的重用性,有利于程序的維護。通過JavaBean組件連接數(shù)據(jù)庫中代碼的實現(xiàn)一般有兩種方法。1)在類的構(gòu)造方法進行初始化連接2)通過類中的方法進行連接數(shù)據(jù)庫,7.4.2 實現(xiàn)對數(shù)據(jù)庫的操作,通過JavaBean實現(xiàn)對數(shù)據(jù)庫的信息進

18、行查詢、添加、修改、刪除等操作,在JavaBean中操作數(shù)據(jù)庫和在JSP頁面中操作數(shù)據(jù)庫是一樣的,不同的是JavaBean只負(fù)責(zé)執(zhí)行數(shù)據(jù)庫操作,不關(guān)心顯示方面的邏輯。這樣可以有效地實現(xiàn)顯示層和數(shù)據(jù)訪問層的分離。JSP頁面僅負(fù)責(zé)數(shù)據(jù)的錄入和顯示,當(dāng)需要對數(shù)據(jù)庫進行操作的時候,只需調(diào)用JavaBean中的方法即可。,本 章 小 結(jié),本章介紹了如何使用JSP與JavaBean結(jié)合來開發(fā)應(yīng)用程序,并通過一個用戶信息查詢的例子介紹了所涉及到的知識

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論