




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、JSP程序設(shè)計(jì)教程第5 章 JavaBean技術(shù)第第 5章章 JavaBean技術(shù)技術(shù)n5.1 JavaBean概述概述n5.2 JavaBean中的屬性中的屬性n5.3 JavaBean的應(yīng)用的應(yīng)用n5.4 JavaBean的應(yīng)用實(shí)例的應(yīng)用實(shí)例5.1 JavaBean概述概述n JavaBean JavaBean組件就是利用組件就是利用JavaJava語(yǔ)言編寫(xiě)的組件語(yǔ)言編寫(xiě)的組件n 每個(gè)每個(gè)JavaBeanJavaBean都實(shí)現(xiàn)了一個(gè)特定的功能,通過(guò)都實(shí)現(xiàn)了一個(gè)特定的功能,通過(guò)合理地組織不同功能的合理地組織不同功能的JavaBeanJavaBean,可以快速生成,可以快速生成一個(gè)全新的應(yīng)用程
2、序。一個(gè)全新的應(yīng)用程序。5.1 JavaBean概述概述5.1.1 JavaBean技術(shù)介紹技術(shù)介紹5.1.2 JavaBean的種類(lèi)的種類(lèi)5.1.3 JavaBean規(guī)范規(guī)范5.1.1 JavaBean技術(shù)介紹技術(shù)介紹n使用使用JavaBeanJavaBean的最大優(yōu)點(diǎn)就在于它可以的最大優(yōu)點(diǎn)就在于它可以提高代碼的重用提高代碼的重用性性,其宗旨是:,其宗旨是:1 1一次性編寫(xiě)一次性編寫(xiě)一個(gè)成功的一個(gè)成功的JavaBeanJavaBean組件重用時(shí)不需要重新編寫(xiě),開(kāi)組件重用時(shí)不需要重新編寫(xiě),開(kāi)發(fā)者只需要根據(jù)需求修改和升級(jí)代碼即可。發(fā)者只需要根據(jù)需求修改和升級(jí)代碼即可。2 2任何地方執(zhí)行任何地方執(zhí)
3、行一個(gè)成功的一個(gè)成功的JavaBeanJavaBean組件可以在任何平臺(tái)上運(yùn)行。組件可以在任何平臺(tái)上運(yùn)行。3 3任何地方重用任何地方重用一個(gè)成功的一個(gè)成功的JavaBeanJavaBean組件能夠被在多種方案中使用。組件能夠被在多種方案中使用。5.1.2 JavaBean的種類(lèi)的種類(lèi)n JavaBean JavaBean按功能可分為可視化按功能可分為可視化JavaBeanJavaBean和不可視化和不可視化JavaBeanJavaBean兩類(lèi)。兩類(lèi)。 1 1、可視化、可視化JavaBeanJavaBean 就是具有就是具有GUIGUI圖形用戶(hù)界面的圖形用戶(hù)界面的JavaBeanJavaBean
4、; 2 2、不可視、不可視JavaBeanJavaBean 就是沒(méi)有就是沒(méi)有GUIGUI圖形用戶(hù)界面的圖形用戶(hù)界面的JavaBeanJavaBean,最終對(duì)用戶(hù)是不可見(jiàn)的,最終對(duì)用戶(hù)是不可見(jiàn)的,它更多地是被應(yīng)用到它更多地是被應(yīng)用到JSPJSP中。又分為:中。又分為:(1 1)值)值JavaBeanJavaBean 嚴(yán)格遵循了嚴(yán)格遵循了JavaBeanJavaBean的命名規(guī)范。的命名規(guī)范。 通常用來(lái)封裝表單數(shù)據(jù),作為信息的容器。通常用來(lái)封裝表單數(shù)據(jù),作為信息的容器。(2 2)工具)工具JavaBeanJavaBean 可以不遵循可以不遵循JavaBeanJavaBean規(guī)范。規(guī)范。 通常用于封
5、裝業(yè)務(wù)邏輯,數(shù)據(jù)操作等通常用于封裝業(yè)務(wù)邏輯,數(shù)據(jù)操作等5.1.3 JavaBean規(guī)范規(guī)范通常一個(gè)標(biāo)準(zhǔn)的通常一個(gè)標(biāo)準(zhǔn)的JavaBeanJavaBean需遵循以下規(guī)范:需遵循以下規(guī)范: (1 1)實(shí)現(xiàn))實(shí)現(xiàn)java.io.Serializablejava.io.Serializable接口;接口; (2 2)是一個(gè)公共類(lèi);)是一個(gè)公共類(lèi); (3 3)類(lèi)中必須存在一個(gè)無(wú)參數(shù)的構(gòu)造函數(shù);)類(lèi)中必須存在一個(gè)無(wú)參數(shù)的構(gòu)造函數(shù); (4 4)提供對(duì)應(yīng)的)提供對(duì)應(yīng)的setXxxsetXxx()()和和getXxxgetXxx()()方法來(lái)存取類(lèi)中方法來(lái)存取類(lèi)中的屬性,方法中的的屬性,方法中的“Xxx”Xxx”
6、為屬性名稱(chēng),屬性的第一個(gè)字為屬性名稱(chēng),屬性的第一個(gè)字母應(yīng)大寫(xiě)。若屬性為布爾類(lèi)型,則可使用母應(yīng)大寫(xiě)。若屬性為布爾類(lèi)型,則可使用isXxxisXxx()()方法代方法代替替getXxxgetXxx()()方法。方法。 說(shuō)明:如果在說(shuō)明:如果在JSPJSP中使用中使用JavaBeanJavaBean組件,不必實(shí)現(xiàn)組件,不必實(shí)現(xiàn)java.io.Serializablejava.io.Serializable接口仍然可以運(yùn)行。接口仍然可以運(yùn)行。5.2 JavaBean中的屬性中的屬性n 通常通常JavaBeanJavaBean中的屬性分為以下中的屬性分為以下4 4種:種:簡(jiǎn)單屬性(簡(jiǎn)單屬性(Simple
7、Simple);索引屬性();索引屬性(IndexedIndexed););綁定屬性(綁定屬性(BoundBound);約束屬性();約束屬性(ConstrainedConstrained)說(shuō)明:其中說(shuō)明:其中綁定屬性和約束屬性通常在綁定屬性和約束屬性通常在JavaBeanJavaBean的圖形編程中使的圖形編程中使用,所以在這里不用,所以在這里不進(jìn)行介紹。進(jìn)行介紹。 1 1簡(jiǎn)單屬性(簡(jiǎn)單屬性(SimpleSimple)public void setXxx(type value);public type getXxx();若屬性為布爾類(lèi)型,則可使若屬性為布爾類(lèi)型,則可使用用isXXX()方法代
8、替方法代替getXxx()方法。方法。 2 2索引屬性(索引屬性(IndexedIndexed)public void setXxx(type value);public type getXxx();public void setXxx(int index,type value);public type getXxx(int index);5.3 JavaBean的應(yīng)用的應(yīng)用5.3.1 創(chuàng)建創(chuàng)建JavaBean5.3.2 在在JSP頁(yè)面中應(yīng)用頁(yè)面中應(yīng)用JavaBean5.3.1 創(chuàng)建創(chuàng)建JavaBean 【例【例5-6】 在在Eclipse下創(chuàng)建下創(chuàng)建JavaBean 創(chuàng)建一個(gè)創(chuàng)建一個(gè)Java
9、BeanJavaBean,就是在遵循,就是在遵循特殊特殊規(guī)范的基礎(chǔ)上創(chuàng)規(guī)范的基礎(chǔ)上創(chuàng)建一個(gè)建一個(gè)JavaJava類(lèi)。類(lèi)。 值值JavaBean作為信息的容器,作為信息的容器,通常用來(lái)封裝表單數(shù)據(jù)通常用來(lái)封裝表單數(shù)據(jù),也就是,也就是將用戶(hù)向表單字段中輸入的數(shù)據(jù)存儲(chǔ)到將用戶(hù)向表單字段中輸入的數(shù)據(jù)存儲(chǔ)到JavaBean對(duì)應(yīng)的屬性中。對(duì)應(yīng)的屬性中。5.3.2 在在JSP頁(yè)面中應(yīng)用頁(yè)面中應(yīng)用JavaBean1 1在在JSPJSP頁(yè)面中應(yīng)用值頁(yè)面中應(yīng)用值JavaBeanJavaBeann JavaBeanJavaBean當(dāng)它們被編譯成當(dāng)它們被編譯成ClassClass文件后,需要放在項(xiàng)目文件后,需要放在項(xiàng)
10、目中的中的WEB-INFclassesWEB-INFclasses目錄下,才可以在目錄下,才可以在JSPJSP頁(yè)面中被調(diào)用。頁(yè)面中被調(diào)用。 【例【例5-75-7】 在在JSPJSP頁(yè)面中應(yīng)用值頁(yè)面中應(yīng)用值JavaBeanJavaBean 【例【例5-8】 在在JSP頁(yè)面中應(yīng)用工具頁(yè)面中應(yīng)用工具JavaBean5.3.2 在在JSP頁(yè)面中應(yīng)用頁(yè)面中應(yīng)用JavaBean 2 2在在JSPJSP頁(yè)面中應(yīng)用工具頁(yè)面中應(yīng)用工具JavaBeanJavaBean 工具工具JavaBean通常用于封裝業(yè)務(wù)邏輯、數(shù)據(jù)操作等。使用工具通常用于封裝業(yè)務(wù)邏輯、數(shù)據(jù)操作等。使用工具JavaBean可以實(shí)現(xiàn)業(yè)務(wù)邏輯與前臺(tái)
11、程序的分離,提高了代碼的可讀可以實(shí)現(xiàn)業(yè)務(wù)邏輯與前臺(tái)程序的分離,提高了代碼的可讀性與易維護(hù)性。性與易維護(hù)性。5.4 JavaBean的應(yīng)用實(shí)例的應(yīng)用實(shí)例5.4.1 應(yīng)用應(yīng)用JavaBean解決中文亂碼解決中文亂碼5.4.2 應(yīng)用應(yīng)用JavaBean實(shí)現(xiàn)購(gòu)物車(chē)實(shí)現(xiàn)購(gòu)物車(chē)5.4.1 應(yīng)用應(yīng)用JavaBean解決中文解決中文亂碼亂碼 在在JSPJSP程序開(kāi)發(fā)中,通過(guò)表單提交的數(shù)據(jù)中若存在中程序開(kāi)發(fā)中,通過(guò)表單提交的數(shù)據(jù)中若存在中文,則獲取該數(shù)據(jù)后輸出到頁(yè)面中將顯示亂碼,如文,則獲取該數(shù)據(jù)后輸出到頁(yè)面中將顯示亂碼,如下圖下圖所所示。所以在輸出獲取的表單數(shù)據(jù)之前,必須進(jìn)行轉(zhuǎn)碼操作。示。所以在輸出獲取的表單
12、數(shù)據(jù)之前,必須進(jìn)行轉(zhuǎn)碼操作。將該轉(zhuǎn)碼操作在將該轉(zhuǎn)碼操作在JavaBeanJavaBean中實(shí)現(xiàn),可在開(kāi)發(fā)其他項(xiàng)目時(shí)重中實(shí)現(xiàn),可在開(kāi)發(fā)其他項(xiàng)目時(shí)重復(fù)使用,避免了重復(fù)編碼。復(fù)使用,避免了重復(fù)編碼。未轉(zhuǎn)未轉(zhuǎn)碼碼轉(zhuǎn)碼轉(zhuǎn)碼后后5.4.2 應(yīng)用應(yīng)用JavaBean實(shí)現(xiàn)購(gòu)物實(shí)現(xiàn)購(gòu)物車(chē)車(chē) 購(gòu)物車(chē)相信大家都已經(jīng)非常熟悉,在現(xiàn)實(shí)生活中,購(gòu)購(gòu)物車(chē)相信大家都已經(jīng)非常熟悉,在現(xiàn)實(shí)生活中,購(gòu)物車(chē)是商場(chǎng)提供給顧客用來(lái)存放自己所挑選的商品工具,物車(chē)是商場(chǎng)提供給顧客用來(lái)存放自己所挑選的商品工具,顧客還可以從購(gòu)物車(chē)中拿出不打算購(gòu)買(mǎi)的商品。在顧客還可以從購(gòu)物車(chē)中拿出不打算購(gòu)買(mǎi)的商品。在WebWeb程程序開(kāi)發(fā)中,購(gòu)物車(chē)的概念被應(yīng)用到了網(wǎng)絡(luò)電子商城中,用序開(kāi)發(fā)中,購(gòu)物車(chē)的概念被應(yīng)用到了網(wǎng)絡(luò)電子商城中,用戶(hù)同樣可對(duì)該購(gòu)物車(chē)進(jìn)行商品的添加和刪除操作,并且購(gòu)戶(hù)同樣可對(duì)該購(gòu)物車(chē)進(jìn)行商品的添加和刪除操作
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 勞務(wù)派工合同范本
- 個(gè)人課題申報(bào)書(shū)怎么
- 咨詢(xún)中介服務(wù)合同范本
- 醫(yī)院大型設(shè)備合同范本
- 五金鉆頭采購(gòu)合同范本
- 農(nóng)村買(mǎi)地蓋房合同范本
- 刷單協(xié)議合同范本
- 賣(mài)房有效合同范本
- 合肥房屋拆除合同范本
- 加油站事故隱患排查清單(主要負(fù)責(zé)人級(jí))
- 《醫(yī)療事故處理?xiàng)l例》解讀
- 四年級(jí)下冊(cè)綜合實(shí)踐活動(dòng)課件- 用身體說(shuō)話(huà)|長(zhǎng)春版
- DB11-T 1894-2021 10kV及以下配電網(wǎng)設(shè)施配置技術(shù)規(guī)范
- 廣西版五年級(jí)下冊(cè)美術(shù)全冊(cè)教案【完整版】
- 《三國(guó)演義》題庫(kù)單選題100道及答案解析
- 農(nóng)村勞動(dòng)力資源調(diào)查工作方案
- 《中國(guó)人民站起來(lái)了》教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版高中語(yǔ)文選擇性必修上冊(cè)
- 高校教師組織生活發(fā)言稿
- 3輸變電工程施工質(zhì)量驗(yàn)收統(tǒng)一表式(變電工程電氣專(zhuān)業(yè))-2024年版
- 法學(xué)法律實(shí)務(wù)課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論