您現在的位置是:電腦技術吧?>? 基礎知識 ??>??mvc設計模式jsp用于實現,jsp開發框架??>??正文詳情

mvc設計模式jsp用于實現,jsp開發框架

不華美2019-12-12 16:22:07 人圍觀
簡介jsp中的mvc模式一:當我第一次學習JSP時,我總是喜歡把它與ASP和PHP進行比較,我習慣用ASP開發模式來編寫JSP。后來,我發現真的很傻。事實上,當JSP出現時,它使用MV簡述jsp中的mvc模式

一:介紹記得初學jsp的時候,總喜歡把他和asp,php去比較,也習慣于使用asp的開發模式去寫jsp,后來才發現這真是很傻的做法,其實jsp一出了來就已經用MVC模式了。

下面我就簡要說說jsp設計使用MVC來設計。

二:MVC介紹MVC其實是模、視圖、控制的縮寫,也就是說在使用jsp時,有相應的文件去實現相應的操作。

通常jsp只負責view也就是只負責顯示頁面。

業務邏輯等 有bean(ejb)去實現。

下面討論的是不使用ejb的情況下實現。

如果使用ejb,ejb負責M.C通常會由servlet去實現。

或者使用 struts.struts的介紹你可是去http://jakarta.apache.org/struts去看。

以后的文章中我會介紹。

三:設計思路當你構建一個Application時。

你必須考慮界面的問題,而界面修改是非常平常的。

如果你在jsp中實現所有的操作,一旦修改界面你麻煩大了。

美工 不懂jsp的,你必須自己去修改無數個文件,頭不要太大,而此時一般時間都很緊,使用MVC則可以減少你的一些麻煩。

在設計時候jsp只負責顯示頁面,也就是說jsp調用Bean(Struts,servlet)傳過來的數據然后顯示而Bean(Struts, servlet)負責收集jsp需要的數據,用ArrayList(Arttibute)傳給jsp。

假如需要提交表單,一般也直接提交給Struts, servlet,處理后以后再返回處理信息。

而其中相應的業務邏輯由Bean去實現。

四:Bean的設計在我使用時候Bean通常有三類,分別manager,entry,database目錄下面。

manager下面的bean做商業邏輯entry下的bean就是封裝數據,其實就是每個數據庫表對應會有一個bean。

jsp得到的也全部是類。

database下的bean就是操作數據庫,執行如insert,update,delete,load(查詢一條記錄),batchload(查詢多條記錄)。

他們之間的關系是entry負責封裝數據,作為database的調用參數,返回結果。

manager調用database處理的結果。

manager和jsp通信。

jsp得到的結果從manager來, jsp需要做操作調用manager,即使是一個insert 在database存在這樣的方法但在manager中你還是需要再封裝一次。

這樣做的目的是使結構盡量簡單。

database只負責操作數據庫。

manager只做邏輯(取相應的數據)處理相應的邏輯,而entry則只把database取到的數據封裝,或則把頁面得到的參數封裝,做為參數傳給相 應的Bean.五:設計實例下面我把留言板作為實例來討論:entry/Guestbook.java(留言板對象)database/GuestbookMap.java(更新,刪除,修改留言板)manager/GuestbookManager.java(處理所有的事務)數據表結構(postgresql)create sequence seq_guestbook increment 1 ;/**序列號生成器**/create table guestbook(id int8 default nextval(seq_guestbook), /**主鍵**/title varchar(64),/**主題**/body text,/**內容**/sayid int8,/**發言人**/toid int8,/**接受人**/saytime datetime default now(),/**留言時間**/newflg smallint default 1/**是否查看過**/);Guestbook.java=======================import java.util.*;public class Guestbook(){private int id;private String title;private body title;private int sayid;private int sayid;private Date saytime;private short newflg;public Guestbook(){}$False$public int getId(){return this.id;}public void setId(int _id){this.id=_id;}..(全是get/set方法)}GuestbookMap.java==============================import Guestbook;public class GuestbookMap(){public GuestbookMap(){}public Guestbook load(int id){//取到一條guestbook}//sqlstr 查詢條件//orderstr 排序條件//rcdbegin 記錄開始//rcdend 記錄結束//public ArrayList batchLoad(String sqlstr,String orderstr,int rcdbegin,int rcdend){//ArrayList 里面封裝了Guestbook}public void insert(Guestbook info){}public void update(Guestbook info){}public void delete(int id){//取到一條guestbook}public int getRcdNums(String sqlstr){//取記錄條數}}GuestbookManager.java根據需要封裝需要的方法,這部分才是你要寫的=============================上面的方式entry,database的文件可以自動生成,這個工具我已經開發了,如果需要聯系我。

你需要寫的就是GuestbookManager里 面的方法,你也許會覺得工作量比你所有的操作都在jsp中大,但是這樣結構非常清晰。

你還需要的就是寫一個數據庫連接池,你所有的數據庫操作都從一個地方 取,每一次都去連接數據庫開銷很大的。

六:技術優勢1:結構清晰2:維護方便3:保護代碼比較好。

.

版權聲明:本文由 不華美 整理編輯。

原標題:mvc模式實例,jsp網頁制作教程

轉載注明出處:http://www.dn9ww09s.icu/basics/15362.html

文章評論

    共有條評論來說兩句吧...

    用戶名:

    驗證碼:

作者推薦

  • asp調用ashx,asp調用列表

    asp調用ashx,asp調用列表 相關圖片asp javascript一。創建一個新的類庫mytestdl2,右鍵單擊項目mytestdll-properties-generate-check以注冊com互操作性3。打開assemjavascript與asp...

  • c數據結構庫,java有數據結構模板庫

    c數據結構庫,java有數據結構模板庫 相關圖片數據結構在線題庫本文主要介紹phpspl標準庫數據結構堆的簡單使用實例。并對最大堆和最小堆的相關知識進行了說明。您可以為您的朋友引用堆,它是為實現優先級隊列而設計的數據結...

  • asp 入門,asp入門實例

    asp 入門,asp入門實例 相關圖片aspnet從入門到精通!--#include File=conn.asp--%Dim idDim Rs,Sql id=Replace(Trim(Request.QueryString零基礎學asp教程...

  • 全球在線人數最多的游戲,騰訊在線人數規律

    全球在線人數最多的游戲,騰訊在線人數規律 相關圖片游戲在線人數排行榜%user=request.cookies(21bbsusername)totaluser=application(user)如果instr(totaluser在線人數最多的網友...

  • 代碼復用是什么,代碼復用的方式

    代碼復用是什么,代碼復用的方式 相關圖片通過封裝可以實現代碼復用嗎本文主要介紹了在PHP中利用traits實現代碼重用的實例。本文介紹了trait的簡單使用、優先級問題、trait的多重沖突問題,可以用來修改方法訪問控制、tr代碼...

  • asp中日期時間轉換為日期的函數,asp日期函數

    asp中日期時間轉換為日期的函數,asp日期函數 相關圖片asp轉換函數===========格式時間(顯示)參數:n戔flag1:yyyy-MM-DD HH:MM:SS2:yyyy-MM-DD3:HH:MM:SS4:yyyy-MMasp提取年月的函數...

  • oledb連接數據庫字符串,數據庫連接字符串是什么

    oledb連接數據庫字符串,數據庫連接字符串是什么 相關圖片數據庫拼接字符串設置conn=Server.CreateObject(ADODB.Connection)conn.open DRIVER=DRIVER-do-Microsoftsqlserver連接字符串...

  • 接口標準,什么是接口

    接口標準,什么是接口 相關圖片usba型接口本文主要介紹了phpspl標準庫的接口細節。本文介紹了Coutable接口、outiterator接口、遞歸迭代器接口、seebable迭代器接口、splobsngff接口...

  • 顯示適配器代碼43,什么是適配器模式

    顯示適配器代碼43,什么是適配器模式 相關圖片適配器認證本文主要介紹PHP設計模式的適配器模式代碼示例。本文闡述了目標、角色、應用場景、優點等內容,并給出了代碼示例。需要的朋友可以參考以下目標:可以將一個類的接口...

  • java split函數,split函數分割

    java split函數,split函數分割 相關圖片vba split函數用法%STR1應該處理哪些字符?讓我們看一個字符:item u tempcontent=split(sp'u tempcontent,)/})(0)這里是vb split函數用法...

熱評文章

  • 有什么方法可以讓pdf組件快些,vue定義組件的方法

    有什么方法可以讓pdf組件快些,vue定義組件的方法 相關圖片vue父組件調用子組件方法Object.createtextfile (filename [, overwrite [, Unicode]]) folderiview組件小...

  • visual studio怎么用,在visual studio

    visual studio怎么用,在visual studio 相關圖片visual studio c最近,服務器總是彈出visual studio實時調試器,這非常令人沮喪。無法關閉。如何解決這個問題,如下圖所示:讓我們分析出現這種情況的原因:彈出應用程序:Vvisual studio 官...

  • sfb47使用實例,fc105使用實例

    sfb47使用實例,fc105使用實例 相關圖片正則表達式使用實例本文主要介紹phpsblobjectstorage。Splobjectstorage是SPL標準庫中的一個數據結構對象容器,用于存儲一組對象,特別是需要唯一標識實例化數組...

  • 無法連接數據庫,無法連接到數據庫

    無法連接數據庫,無法連接到數據庫 相關圖片數據庫連接失敗怎么辦現在有很多新的JSP用戶經常問如何連接數據庫,如何出錯?所以我把重點放在這篇文章上供你參考。實際上,將所有的數據庫邏輯都放在JSP中并不是一個好方法,...

  • php如何遍歷一個文件,php數組遍歷

    php如何遍歷一個文件,php數組遍歷 相關圖片php遍歷文件夾下所有文件這個例子描述了PHP如何遍歷類中包含的所有元素。與您分享以供參考。具體分析如下:這里可以得到PHP類中包含的所有元素的鍵值輸出?12345678910112類m遍歷it...

  • 大二上總結,大二個人年度總結

    大二上總結,大二個人年度總結 相關圖片大二學期個人總結Servlet是一段Java代碼,它可以擴展web服務器的功能。每個servlet在一個進程中運行,對servlet的新請求作為servlet進程中的線程運行。大二上學期個人總結500...

  • 如何深入講解,深入細致的講解

    如何深入講解,深入細致的講解 相關圖片金剛經講解方法1:在servlet的init()方法中緩存數據。在應用服務器初始化servlet實例之后,它將在服務客戶機請求之前調用servlet的init()方法。在深入淺出的講解...

  • c 環境配置,主機開發環境配置

    c 環境配置,主機開發環境配置 相關圖片maven環境配置FCKeditor是一個在sourceforge.net之上的開源項目,主要實現在線網頁編輯器的功能,使web程序具有MS-word等強大的編輯功能。官方網站是配置是什么...

  • if嵌套例子,嵌套編程

    if嵌套例子,嵌套編程 相關圖片c語言循環嵌套例子本文主要介紹了PHP嵌套輸出緩沖代碼的例子。本文解釋了使用ob系列函數嵌套的示例。如果需要朋友的話,可以引用可以嵌套的PHP輸出緩沖區。嵌套級別可以使用OB>g...

  • 基于asp系統,asp系統開發

    基于asp系統,asp系統開發 相關圖片sap財務系統headmeta http equiv=Content Language Content=zh cnmeta http equiv=Content Type Casp開源建站系統...

關注微信

变脸官网查询