大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

JSP教程
JSP高級(jí)教程

JSP開發(fā)模式

JSP 程序開發(fā)模式包括 JSP 編程、JSP+JavaBean 編程、JSP+JavaBean+Servlet 編程、MVC 模式。

單純的JSP編程

在 JSP 編程模式下,通過應(yīng)用 JSP 中的腳本標(biāo)志,可以直接在 JSP 頁面中實(shí)現(xiàn)各種功能。雖然這種模式很容易實(shí)現(xiàn),但是,其缺點(diǎn)也非常明顯。因?yàn)閷⒋蟛糠值?Java 代碼與 HTML 代碼混淆在一起,會(huì)給程序的維護(hù)和調(diào)試帶來很多困難,而且難以理清完整的程序結(jié)構(gòu)。

這就好比規(guī)劃管理一個(gè)大型企業(yè),如果將負(fù)責(zé)不同任務(wù)的所有員工都安排在一起工作,勢必會(huì)造成公司秩序混亂、不易管理等許多隱患。所以說,單純的 JSP 頁面編程模式是無法應(yīng)用到大型、中型甚至小型的 JSP Web 應(yīng)用程序開發(fā)中的。

JSP+JavaBean 編程

JSP+JavaBean 編程模式是 JSP 程序開發(fā)經(jīng)典設(shè)計(jì)模式之一,適合小型或中型網(wǎng)站的開發(fā)。利用 JavaBean 技術(shù),可以很容易地完成一些業(yè)務(wù)邏輯上的操作,例如數(shù)據(jù)庫的連接、用戶登錄與注銷等。

JavaBean 是一個(gè)遵循了一定規(guī)則的 Java 類,在程序的開發(fā)中,將要進(jìn)行的業(yè)務(wù)邏輯封裝到這個(gè)類中,在 JSP 頁面中,通過動(dòng)作標(biāo)簽來調(diào)用這個(gè)類,從而執(zhí)行這個(gè)業(yè)務(wù)邏輯。此時(shí)的 JSP 除了負(fù)責(zé)部分流程的控制外,主要用來進(jìn)行頁面的顯示,而 JavaBean 則負(fù)責(zé)業(yè)務(wù)邏輯的處理。

可以看出,JSP+JavaBean 設(shè)計(jì)模式具有一個(gè)比較清晰的程序結(jié)構(gòu),在 JSP 技術(shù)的起步階段,該模式曾被廣泛應(yīng)用。

圖 1 表示該模式對(duì)客戶端的請求進(jìn)行處理的過程,相關(guān)的說明如下。

1.用戶通過客戶端瀏覽器請求服務(wù)器。

2.服務(wù)器接收用戶請求后調(diào)用 JSP 頁面。

3.在 JSP 頁面中調(diào)用 JavaBean。

4.在 JavaBean 中連接及操作數(shù)據(jù)庫,或?qū)崿F(xiàn)其他業(yè)務(wù)邏輯。

5.JavaBean 將執(zhí)行的結(jié)果返回 JSP+ 頁面。

6.服務(wù)器讀取 JSP 頁面中的內(nèi)容(將頁面中的靜態(tài)內(nèi)容與動(dòng)態(tài)內(nèi)容相結(jié)合)。

7.服務(wù)器將最終的結(jié)果返回給客戶端瀏覽器進(jìn)行顯示。

圖1 JSP+JavaBean設(shè)計(jì)模式

JSP+JavaBean+Servlet 編程

JSP+JavaBean 設(shè)計(jì)模式雖然已經(jīng)對(duì)網(wǎng)站的業(yè)務(wù)邏輯和顯示頁面進(jìn)行了分離,但這種模式下的 JSP 不但要控制程序中的大部分流程,而且還要負(fù)責(zé)頁面的顯示,所以仍然不是一種理想的設(shè)計(jì)模式。

在 JSP+JavaBean 設(shè)計(jì)模式的基礎(chǔ)上加入 Servlet 來實(shí)現(xiàn)程序中的控制層,是一個(gè)很好的選擇。在這種模式中,由 Servlet 來執(zhí)行業(yè)務(wù)邏輯并負(fù)責(zé)程序的流程控制,JavaBean 組件實(shí)現(xiàn)業(yè)務(wù)邏輯,充當(dāng)模型的角色,JSP 用于頁面的顯示。可以看出,這種模式使得程序中的層次關(guān)系更明顯,各組件的分工也非常明確。圖 2 表示該模式對(duì)客戶端的請求進(jìn)行處理的過程。

圖2 JSP+JavaBean+Servlet 設(shè)計(jì)模式

圖 2 所示的模式中,各步驟的說明如下。

1.用戶通過客戶端瀏覽器請求服務(wù)器。

2.服務(wù)器接收用戶請求后調(diào)用 Servlet。

3.Servlet 根據(jù)用戶請求調(diào)用 JavaBean 處理業(yè)務(wù)。

4.在 JavaBean 中連接及操作數(shù)據(jù)庫,或?qū)崿F(xiàn)其他業(yè)務(wù)邏輯。

5.JavaBean 將結(jié)果返回 Servlet,在 Servlet 中將結(jié)果保存到請求對(duì)象中。

6.由 Servlet 轉(zhuǎn)發(fā)請求到 JSP 頁面。

7.服務(wù)器讀取 JSP 頁面中的內(nèi)容(將頁面中的靜態(tài)內(nèi)容與動(dòng)態(tài)內(nèi)容結(jié)合)。

8.服務(wù)器將最終的結(jié)果返回給客戶端瀏覽器進(jìn)行顯示。

但 JSP+JavaBean+Servlet 模式同樣也存在缺點(diǎn)。該模式遵循了 MVC 設(shè)計(jì)模式,MVC 只是一個(gè)抽象的設(shè)計(jì)概念,它將待開發(fā)的應(yīng)用程序分解為三個(gè)獨(dú)立的部分:模型(Model)、視圖(View)和控制器(Controller)。

雖然用來實(shí)現(xiàn) MVC 設(shè)計(jì)模式的技術(shù)可能都是相同的,但各公司都有自己的 MVC 架構(gòu)。也就是說,這些公司用來實(shí)現(xiàn)自己的 MVC 架構(gòu)所應(yīng)用的技術(shù)可能都是 JSP、Servlet 與 JavaBean,但它們的流程及設(shè)計(jì)卻是不同的,所以工程師需要花更多的時(shí)間去了解。

從項(xiàng)目開發(fā)的觀點(diǎn)上來說,因?yàn)樾枰O(shè)計(jì) MVC 各對(duì)象之間的數(shù)據(jù)交換格式與方法,所以在系統(tǒng)的設(shè)計(jì)上需要花費(fèi)更多的時(shí)間。

使用 JSP+JavaBean+Servlet 模式進(jìn)行項(xiàng)目開發(fā)時(shí),可以選擇一個(gè)實(shí)現(xiàn)了 MVC 模式的現(xiàn)成的框架,在此框架的基礎(chǔ)上進(jìn)行開發(fā),能夠大大節(jié)省開發(fā)時(shí)間,會(huì)取得事半功倍的效果。目前,已有很多可以使用的現(xiàn)成的 MVC 框架,例如 Struts 框架。

MVC 模式

MVC(Model-View-Controller,模型-視圖-控制器)是一種程序設(shè)計(jì)概念,它同時(shí)適用于簡單的和復(fù)雜的程序。使用該模式,可將待開發(fā)的應(yīng)用程序分解為三個(gè)獨(dú)立的部分:模型、視圖和控制器。

提出這種設(shè)計(jì)模式主要是因?yàn)閼?yīng)用程序中用來完成任務(wù)的代碼(模型,也稱為“業(yè)務(wù)邏輯”)通常是程序中相對(duì)穩(wěn)定的部分,并且會(huì)被重復(fù)使用,而程序與用戶進(jìn)行交互的頁面(視圖),卻是經(jīng)常改變的。

如果因需要更新頁面而不得不對(duì)業(yè)務(wù)邏輯代碼進(jìn)行改動(dòng),或者要在不同的模塊中應(yīng)用相同的功能時(shí)重復(fù)地編寫業(yè)務(wù)邏輯代碼,不僅會(huì)降低整體程序開發(fā)的進(jìn)程,而且會(huì)使程序變得難以維護(hù)。因此,將業(yè)務(wù)邏輯代碼與外觀呈現(xiàn)分離,將會(huì)更容易地根據(jù)需求的改變來改進(jìn)程序。MVC 模式的模型如圖 3 所示。

圖3 MVC模式的模型

Model(模型):MVC 模式中的 Model(模型)指的是業(yè)務(wù)邏輯的代碼,是應(yīng)用程序中真正用來完成任務(wù)的部分。

View(視圖):視圖實(shí)際上就是程序與用戶進(jìn)行交互的界面,用戶可以看到它的存在。視圖可以具備一定的功能,并應(yīng)遵守對(duì)其所做的約束。在視圖中,不應(yīng)包含對(duì)數(shù)據(jù)處理的代碼,即業(yè)務(wù)邏輯代碼。

Controller(控制器):控制器主要用于控制用戶請求并做出響應(yīng)。它根據(jù)用戶的請求,選擇模型或修改模型,并決定返回什么樣的視圖。

全部教程
主站蜘蛛池模板: 男人懂的网站 | 国产一级内谢a级高清毛片 国产一级片毛片 | 深夜影院在线观看 | 精品国产一区二区三区香蕉事 | 天天操天天操天天操天天操 | 久久成人在线观看 | 免费看国产一级特黄aa大片 | 快播视频在线 | 久久久噜噜噜久噜久久 | 国产成人免费a在线资源 | 欧美视频在线观看免费 | 成人亚洲欧美日韩在线观看 | 羞羞的视频在线观看 | www午夜视频 | 4虎影院午夜在线观看 | 最新地址四虎www4hutv | 亚洲第一区视频在线观看 | 99热在线获取最新地址 | 婷婷亚洲五月色综合 | 色综合伊人色综合网亚洲欧洲 | 奇米第四777| 成年女人免费视频播放77777 | 亚洲精品性夜夜夜 | 国产一区二区高清在线 | 青青久在线视频免费视频 | 天天干天天干天天天天天天爽 | 性生活视频免费 | 久久成人免费 | 国产亚洲精品福利片 | 日本不卡视频在线观看 | 日本高清免费不卡毛片 | 日韩国产片 | 亚欧人成精品免费观看 | 免费看黄色的视频 | 国产精品成人四虎免费视频 | 2023中文字幕在线观看 | 色偷偷亚洲天堂 | 国产亚洲精品第一区在线观看 | 99在线精品国产不卡在线观看 | 欧美亚洲动漫 | 国产成人一区二区三中文 |