【正文】
an 的 web 開(kāi)發(fā)模式的研究11 引言眾所周知,Web 這個(gè) Inter 上最熱門的應(yīng)用架構(gòu)是由 Tim BernersLee 發(fā)明的。1991 年, CERN(European Particle Physics Laboratory)正式發(fā)布了Web 技術(shù)標(biāo)準(zhǔn)。用戶端只要使用常規(guī)可執(zhí)行 HTML 碼的瀏覽器即可以瀏覽。你還可以自己編寫(xiě)外圍的函數(shù)間接存取數(shù)據(jù)庫(kù)而當(dāng)你更換使用的數(shù)據(jù)庫(kù)時(shí),可以輕松的更改編碼以適應(yīng)這樣的變化。由于 JSP 頁(yè)面的內(nèi)置腳本語(yǔ)言是基于 Java 編程語(yǔ)言的,擁有 Java 語(yǔ)言“一次編寫(xiě)各處運(yùn)行 ”的特點(diǎn),而且所有的 JSP 頁(yè)面都被編譯成 Java Server Class, JSP 頁(yè)面就具有 Java 技術(shù)的所有好處,包括健壯的存儲(chǔ)管理和安全性。對(duì)于大夫和網(wǎng)站,解決辦法只有一個(gè):分布計(jì)算。然后 jspService()方法被調(diào)用來(lái)處理客戶端的請(qǐng)求。JavaBean 通過(guò)Java 虛擬機(jī)可以得到正確的執(zhí)行,具有平臺(tái)無(wú)關(guān)性。 ”從 Java Web 應(yīng)用的定義可以看出 Java Web 應(yīng)用程序不僅可以在 Tomcat 中運(yùn)行,還可以在其他符合 Servlet 規(guī)范的 Servlet 容器中運(yùn)行。從圖 23 中可以看出,JSP 技術(shù)的出現(xiàn),使得把 web 應(yīng)用中的 html 文檔和業(yè)務(wù)邏輯代碼有效的分開(kāi)成為可能。 3. 類中方法的訪問(wèn)屬性都必須是 public 的。 Bean 的命名規(guī)范Java Bean 的命名規(guī)范如下:包命名:全部字母小寫(xiě)。工作過(guò)程如圖 31 所示:基于 Jsp 和 JavaBean 的 web 開(kāi)發(fā)模式的研究13 數(shù)據(jù)庫(kù)Javabean(封裝數(shù)據(jù)庫(kù)操作)圖 31 訪問(wèn)數(shù)據(jù)庫(kù)工作圖 建立基于 Jsp 和 JavaBean 的 Web 開(kāi)發(fā)模式 該模塊主要是通過(guò)前面知識(shí)的學(xué)習(xí)和分析,通過(guò)和 B/S 模式的三層結(jié)構(gòu)的比較,驗(yàn)證通過(guò) jsp 和 javabean 可以進(jìn)行 web 開(kāi)發(fā),以及此種開(kāi)發(fā)開(kāi)發(fā)模式的設(shè)計(jì)思想,工作原理,特點(diǎn)和優(yōu)勢(shì)。 圖32 開(kāi)發(fā)模式共組原理圖(1)JavaBean :包含了 Web 應(yīng)用中程序功能的核心,負(fù)責(zé)存儲(chǔ)與 Web 應(yīng)用相關(guān)的數(shù)據(jù),集中體現(xiàn)了應(yīng)用程序的狀態(tài)。新建系統(tǒng)變量 JAVA_HOME:C:\Program Files\Java\;新建系統(tǒng)變量 CLASSPATH:.。%JAVA_HOME%\lib。String name = (Book_Name)。static Connection conn=null。}} catch (SQLException e){(null,數(shù)據(jù)庫(kù)查詢失??!)。}if(flag0)bl=true。int flag=0。到目前為止基本工作已經(jīng)完成。為此,我也希望我的畢業(yè)設(shè)計(jì)能給指導(dǎo)我的老師交上一份滿意的試卷?;?Jsp 和 JavaBean 的 web 開(kāi)模式的研究30結(jié)束語(yǔ)畢業(yè)設(shè)計(jì)對(duì)我們每個(gè)畢業(yè)生都非常重要。return bl。float price。 + price + 39。try{ if(id!=){rs=(select * from book where Book_ID=+39。表 book 設(shè)計(jì)如下: 基于 Jsp 和 JavaBean 的 web 開(kāi)發(fā)模式的研究25連接數(shù)據(jù)庫(kù)核心代碼分析:String drive=。 實(shí)例中基于 jsp 的編程 該實(shí)例涉及到的 jsp 文件如下: 負(fù)責(zé)顯示圖書(shū)列表; 負(fù)責(zé)圖書(shū)的添加; 負(fù)責(zé)圖書(shū)信息的修改; 負(fù)責(zé)刪除圖書(shū); 負(fù)責(zé)查詢圖書(shū); 負(fù)責(zé)顯示錯(cuò)誤信息 。在系統(tǒng)變量 Path 的值中%JAVA_HOME%\bin。 功能概述 該實(shí)例主要完成的操作有:圖書(shū)的添加,圖書(shū)的刪除,圖書(shū)信息的更新,圖書(shū)的查找。JSP和 JavaBean 模型可以依靠幾個(gè) JavaBean 組件實(shí)現(xiàn)具體的應(yīng)用功能,生成動(dòng)態(tài)內(nèi)容。 運(yùn)用 JavaBean 技術(shù)訪問(wèn)數(shù)據(jù)庫(kù)在 JSP 的應(yīng)用中,數(shù)據(jù)庫(kù)的運(yùn)用有著十分重要的地位,可以說(shuō)數(shù)據(jù)庫(kù)的運(yùn)用是JSP 應(yīng)用的關(guān)鍵之一。Java Bean 必須生成 public class 類,文件名稱應(yīng)該與類名稱一致。 編寫(xiě)javabean 就是編寫(xiě)一個(gè) java 的類,所以你只要會(huì)寫(xiě)類就能編寫(xiě)一個(gè) bean,這個(gè)類創(chuàng)建的一個(gè)對(duì)象稱做一個(gè) bean。JSP 負(fù)責(zé)動(dòng)態(tài)生成 HTML基于 Jsp 和 JavaBean 的 web 開(kāi)發(fā)模式的研究9文檔,javabean 負(fù)責(zé)業(yè)務(wù)邏輯。像圖 22 中所示,第一步是 jsp 頁(yè)面接受用戶的請(qǐng)求,而這種請(qǐng)求它本身并不能解決,只有通過(guò)第二步,不請(qǐng)求處理交給 javabean 處理,javabean 是作為一種中間件組件,操作數(shù)據(jù)庫(kù)的工作都在 javabean 中進(jìn)行,直到處理完成位置,javabean 的工作結(jié)束,也就是它的生命后期已經(jīng)完了。 } % 工作流程圖如圖 21 所示: 客戶端 服務(wù)器端基于 Jsp 和 JavaBean 的 web 開(kāi)發(fā)模式的研究6圖 21 jsp 工作流程圖 步驟分為三步: (1).當(dāng)客戶端發(fā)送一個(gè) JSP 的訪問(wèn)請(qǐng)求時(shí),Web 服務(wù)器會(huì)把這個(gè)請(qǐng)求轉(zhuǎn)發(fā)給JSP 容器;(2).JSP 容器將決定由哪個(gè) JSP 頁(yè)面實(shí)現(xiàn)類來(lái)處理這個(gè)請(qǐng)求;(3).JSP 容器調(diào)用 JSP 頁(yè)面實(shí)現(xiàn)類的一個(gè)方法對(duì)這個(gè)請(qǐng)求進(jìn)行處理,并且通過(guò)容器和 Web 服務(wù)器把響應(yīng)返回給客戶端。 JSP 工作原理在一個(gè) JSP 文件第一次被請(qǐng)求時(shí),JSP 引擎把該 JSP 文件轉(zhuǎn)換成為一個(gè)servlet。但在國(guó)外 JSP 已經(jīng)是比較流行的一種技術(shù)尤其是電子商務(wù)類的網(wǎng)站多采用 JSP。標(biāo)準(zhǔn)的 JSP 標(biāo)記能夠訪問(wèn)和實(shí)例化 JavaBean 組件,設(shè)置或者得到組件屬性,下載 applet,以及執(zhí)行用其他方法更難于編碼和耗時(shí)的功能。他的源程序代碼不會(huì)傳到用戶的瀏覽器,可以保護(hù)源代碼?,F(xiàn)今 web 開(kāi)發(fā)模式雖然已經(jīng)有很多種,但是他們的用途卻不一樣,有的是能夠用于開(kāi)發(fā)大的項(xiàng)目,有的適合開(kāi)發(fā)適中大小的的,能不能根據(jù)現(xiàn)有的知識(shí),再提出一種 web 開(kāi)發(fā)模式,使它用于開(kāi)發(fā)小的項(xiàng)目,這也是此次研究的目的。關(guān)鍵詞:web 開(kāi)發(fā) 開(kāi)發(fā)模式 jsp javabeanIIAbstractWith the introduction of web technology, revealed a large number of web development languages,such as asp, jsp, php,and so on, early, a variety of development languages is not yet ripe , development is not a great importance on developing the efficiency of the major concerns is how to achievethe expected features, with the language of improving, there have been many new technologies, then they saw in the need to improve the efficiency of development and how to reduce costs, as the study of the subject based on jsp and javabean39。目前,與 Web 相關(guān)的各種技術(shù)標(biāo)準(zhǔn)都由著名的 W3C 組織(World Wide Web Consortium)管理和維護(hù)。 PHP 是一種跨平臺(tái)的服務(wù)器端的嵌入式腳本語(yǔ)言,它大量的借用 C,Java 和perl 語(yǔ)言的語(yǔ)法,并結(jié)合 PHP 自己的特征,使 Web 開(kāi)發(fā)者能夠快速的挾持動(dòng)態(tài)生成頁(yè)面。PHPLB 就是常用的可以提供一般事務(wù)需要的一系列基庫(kù)。在各自的應(yīng)用范圍內(nèi) ASP 只能運(yùn)行在微軟的服務(wù)器產(chǎn)品上。數(shù)據(jù)庫(kù)、應(yīng)用邏輯層、表示邏輯層彼此分開(kāi),而且同層亦可以根據(jù)流量分開(kāi),組成二維陣列。對(duì)每一個(gè)請(qǐng)求,JSP 引擎創(chuàng)建一個(gè)新的線程來(lái)處理該請(qǐng)求。1.JavaBean 的組成:屬性 Property:Bean 的屬性就是對(duì)象的屬性,但提供屬性讀寫(xiě)和設(shè)置的接口支持;Method:由于 Bean 本身是 Java 對(duì)象,調(diào)用這個(gè)對(duì)象的方法是與其交互作用的唯一途徑。在 JavaWeb 應(yīng)用程序中可以包含如下內(nèi)容?;?JSP 和 javaBean 開(kāi)發(fā)模式正是一種有效實(shí)現(xiàn)方式。 4. 類中如果有構(gòu)造方法,那么這個(gè)構(gòu)造方法也是 public 的并且是無(wú)參數(shù)的。類命名:每個(gè)單詞首字母大寫(xiě)。 B/S 三層 web 開(kāi)發(fā)結(jié)構(gòu)B/S 三層體系結(jié)構(gòu),即用戶層、應(yīng)用層和數(shù)據(jù)庫(kù)服務(wù)器。JavaBean 在 JSPJavaBean 模式中,主要用來(lái)處理事務(wù)邏輯和數(shù)據(jù)結(jié)構(gòu),能夠與數(shù)據(jù)庫(kù)或文件系統(tǒng)進(jìn)行交互,承擔(dān)維護(hù)應(yīng)用程序的責(zé)任。%JAVA_HOME%\lib。%CATALINA_HOME%\mon\lib。float price = (Book_Price)。static Statement dbst=null。}return rs。return bl。boolean bl=false。通過(guò)研究得出以下結(jié)論:(1).Jsp 形式上和 HTML 文件相似因此能和 HTML 文件一樣,直觀的表達(dá)網(wǎng)頁(yè)的內(nèi)容和布局。由于本人掌握的知識(shí)有限,有很多地方分析的不到位,沒(méi)有達(dá)到最好的的效果,懇請(qǐng)批評(píng)指正。(4).基于 Jsp 和 JavaBean 的 Web 開(kāi)發(fā)模式是一種很有前景的 Web 開(kāi)發(fā)模式。}if(flag0)bl=true。}基于 Jsp 和 JavaBean 的 web 開(kāi)發(fā)模式的研究28修改圖書(shū)信息代碼:public boolean change(BookBean book){ String id,name。,39。ResultSet rs=null。 封裝了圖書(shū)實(shí)例該實(shí)例用到數(shù)據(jù)名 BookStore,表名 book。 到這里,MyEclipse 安裝完畢,整個(gè)環(huán)境搭建完成。在系統(tǒng)變量 CLASSPATH 的值的后面加入:%CATALINA_HOME%\mon\lib。基于 Jsp 和 JavaBean 的 web 開(kāi)發(fā)模式的研究164 基于 JSP 和 javaBean 的 web 開(kāi)發(fā)模式的實(shí)例應(yīng)用 實(shí)例介紹 該實(shí)例是有關(guān)圖書(shū)信息管理的項(xiàng)目,做這個(gè)實(shí)例的目的不是為了讓開(kāi)發(fā)一個(gè)功能齊全的圖書(shū)管理系統(tǒng),重點(diǎn)在于是為了驗(yàn)證可以利用 jsp 和 javabean 驚醒 web 開(kāi)發(fā),證明這種開(kāi)發(fā)模式是可行的。JSP 和 JavaBean 可以充分利用了 JSP 技術(shù)易于開(kāi)發(fā)動(dòng)態(tài)網(wǎng)頁(yè)的特點(diǎn),頁(yè)面顯示層的任務(wù)由 JSP(但它也含事物邏輯層的內(nèi)容)承擔(dān),JavaBean 主要負(fù)責(zé)事務(wù)邏輯層和數(shù)據(jù)層的工作。在此我們必須同時(shí)指定 JavaBean 的包(package)名和類(class)名,即class=,否則 JSP 引擎將無(wú)法找到相應(yīng)的 Bean。 Java Bean 的編寫(xiě)要求編寫(xiě) Java Bean 必須滿足以下幾點(diǎn)要求:所有的 Java Bean 必須放在一個(gè)包(Package)中。由于 javabean 是基于 java 語(yǔ)言的,因此 javabean 不依賴平臺(tái),具有以下特點(diǎn): 1. 可以實(shí)現(xiàn)代碼的重復(fù)利用 2. 易編寫(xiě)、易維護(hù)、易使用 3. 可以在任何安裝了 Java 運(yùn)行環(huán)境的平臺(tái)上的使用,而不需要重新編譯。該開(kāi)發(fā)模式主要涉及兩部分內(nèi)容,JSP 和 javaBean。JavaBean 一般用于封裝一些對(duì)像和對(duì)這些對(duì)象所進(jìn)行的操作,它實(shí)際上不出現(xiàn)在顯示界面上,它主要負(fù)責(zé)數(shù)據(jù)庫(kù)連接和數(shù)據(jù)的設(shè)置與獲取,在 jsp 請(qǐng)求某種操作的時(shí)候,jsp 頁(yè)面僅僅是顯示數(shù)據(jù),它不會(huì)對(duì)數(shù)據(jù)做任何操作,只是通過(guò)一定的方式把這種請(qǐng)求交給一個(gè) bean 處理,請(qǐng)求的交付不是簡(jiǎn)單的調(diào)用而已,必須在 jsp 頁(yè)面中做詳細(xì)的設(shè)置,到底是用哪一個(gè) bean 對(duì)象,收到請(qǐng)求的 bean 對(duì)象對(duì)數(shù)據(jù)進(jìn)行操作,待到數(shù)據(jù)處理完了以后,會(huì)把處理完的結(jié)果返回給先前的 jsp 頁(yè)面,它的工作也就完成。 } % %! public void jspDestory() { (jspDestory)。正是由于 JSP 技術(shù)和其它技術(shù)的不同,是的 JSP 由于展示的舞臺(tái),是它快速的在 Web 開(kāi)發(fā)領(lǐng)域占有的很大的比例,成為一顆耀眼的新星,它的發(fā)展更是不可估量的。目前在國(guó)內(nèi) PHP 和 ASP 應(yīng)用最為廣泛。JSP 技術(shù)封裝了很多功能,這些功能是在易用的、與 JSP 相關(guān)的 XML 表集中進(jìn)行動(dòng)態(tài)內(nèi)容生成所需要的。除了可以使用 VB