999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

論基于J2EE的MVC模式在網(wǎng)上書(shū)店開(kāi)發(fā)中的應(yīng)用

2011-10-21 22:33:44況嫦娥李俊
卷宗 2011年6期

況嫦娥 李俊

摘要:本文探討了J2EE技術(shù)與MVC設(shè)計(jì)模式結(jié)構(gòu),并結(jié)合MVC設(shè)計(jì)模式,應(yīng)用J2EE架構(gòu),講解了網(wǎng)上書(shū)店的開(kāi)發(fā)。

關(guān)鍵詞:網(wǎng)上書(shū)店;MVC模式;J2EE架構(gòu)

1基于J2EE的MVC設(shè)計(jì)模式

J2EE是一種利用Java平臺(tái)來(lái)簡(jiǎn)化諸多與多級(jí)企業(yè)解決方案的開(kāi)發(fā)、部署和管理相關(guān)復(fù)雜問(wèn)題的體系結(jié)構(gòu)。它提供了一個(gè)多層次的分布式應(yīng)用模型和一系列開(kāi)發(fā)技術(shù)規(guī)范。多層次分布式應(yīng)用模型是指根據(jù)功能把應(yīng)用邏輯分成多個(gè)層次,每個(gè)層次支持相應(yīng)的服務(wù)器和組件,組件在分布式服務(wù)器的組件容器中運(yùn)行(如Servlet組件在Servlet容器上運(yùn)行,EJB組件在EJB容器上運(yùn)行),容器間通過(guò)相關(guān)的協(xié)議進(jìn)行通信,實(shí)現(xiàn)組件間的相互調(diào)用。遵從這個(gè)規(guī)范的開(kāi)發(fā)者將得到行業(yè)的廣泛支持,使企業(yè)級(jí)應(yīng)用的開(kāi)發(fā)變得簡(jiǎn)單、快速。

MVC(Model-View-Controller)是一種經(jīng)典的軟件體系結(jié)構(gòu),它采用了“分治”的思想,將表示和數(shù)據(jù)分離開(kāi)來(lái),將系統(tǒng)分成三大類:即模型、視圖、控制器。其中模型用于存儲(chǔ)數(shù)據(jù)的對(duì)象,以JavaBean的形式存在;視圖是向控制器提交所需數(shù)據(jù)、顯示模型中的數(shù)據(jù),一個(gè)模型可以對(duì)應(yīng)一個(gè)或多個(gè)視圖;控制器是負(fù)責(zé)具體的業(yè)務(wù)邏輯操作,即控制器根據(jù)視圖提出的要求對(duì)數(shù)據(jù)做出處理,并將有關(guān)結(jié)果存儲(chǔ)到模型中,并負(fù)責(zé)讓模型的視圖進(jìn)行必要的交互,當(dāng)模型中的數(shù)據(jù)變化時(shí),讓視圖更新顯示。

J2EE技術(shù)結(jié)合MVC設(shè)計(jì)模式在構(gòu)建企業(yè)級(jí)WEB應(yīng)用中,JSP對(duì)應(yīng)視圖,應(yīng)當(dāng)盡量避免在JSP中使用大量的Java程序片來(lái)處理數(shù)據(jù),否則不利于代碼的復(fù)用;Servlet對(duì)應(yīng)于控制器;而JavaBean對(duì)應(yīng)于模型,主要進(jìn)行業(yè)務(wù)的處理。基于J2EE的MVC模式的Web應(yīng)用如圖1所示:

2 網(wǎng)上書(shū)店系統(tǒng)的實(shí)現(xiàn)

網(wǎng)上書(shū)店系統(tǒng)的設(shè)計(jì)采用了前面介紹的基于J2EE的MVC設(shè)計(jì)模式,使用了JSP、Servlet、JavaBean、JDBC等技術(shù)。系統(tǒng)由前臺(tái)JSP頁(yè)面和后臺(tái)的JavaBean程序組成。JSP頁(yè)面用于顯示數(shù)據(jù),JavaBean用于訪問(wèn)數(shù)據(jù)庫(kù)和實(shí)現(xiàn)復(fù)雜的邏輯和算法。本系統(tǒng)通過(guò)DBCONN.java訪問(wèn)數(shù)據(jù)庫(kù),通過(guò)DFFCONL.java來(lái)實(shí)現(xiàn)網(wǎng)上書(shū)店的各種業(yè)務(wù)邏輯,如添加新書(shū)、查看用戶資料等。

(1)前臺(tái)頁(yè)面顯示

前臺(tái)頁(yè)面主要用于顯示數(shù)據(jù),登錄頁(yè)面是一個(gè)靜態(tài)的頁(yè)面index.html,由網(wǎng)站菜單和登錄頁(yè)面組成。當(dāng)用戶成功登錄后,進(jìn)入系統(tǒng)的主頁(yè)main.jsp,根據(jù)不同的用戶權(quán)限,主頁(yè)中可實(shí)現(xiàn)的功能不同。而不同用戶權(quán)限的用戶登錄實(shí)現(xiàn)相同的功能,由同一個(gè)JSP頁(yè)面來(lái)實(shí)現(xiàn),這樣即可以增強(qiáng)代碼的復(fù)用性,也提高了可維護(hù)性。如果是以管理員的權(quán)限登錄,可以實(shí)現(xiàn)以下功能:①添加/刪除圖書(shū)種類:由bookpro.jsp來(lái)實(shí)現(xiàn);②添加新的圖書(shū):newbook.jsp等;③查看用戶信息:serchuser.jsp;④修改圖書(shū)資料:updatebook.jsp。

(2) 數(shù)據(jù)訪問(wèn)對(duì)象DBCONN.java

此JavaBean專門用于數(shù)據(jù)庫(kù)訪問(wèn),包括查詢、插入、修改、刪除。首先采用connect()與數(shù)據(jù)庫(kù)連接,然后調(diào)用相應(yīng)的方法來(lái)實(shí)現(xiàn)相應(yīng)的操作。connect方法代碼如下:

public boolean connect()

{boolean isConnect=false;

try{

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";

//pubs為你的數(shù)據(jù)庫(kù)的

String user="sa";

String password="";

Connection conn=DriverManager.getConnection(url,user,password); if(conn!=null)

isConnect=true;

}

catch(Exception e)

{

System.out.println(e);

}

return isConnect;

}

(3)業(yè)務(wù)對(duì)象模型DFFCONL.java

業(yè)務(wù)對(duì)象模型用于實(shí)現(xiàn)網(wǎng)上書(shū)店系統(tǒng)的各種業(yè)務(wù)邏輯,如新增圖書(shū),查看用戶信息等。用戶執(zhí)行每一個(gè)操作,即此JavaBean的一個(gè)方法,都要先對(duì)用戶權(quán)限進(jìn)行驗(yàn)證,其中查看用戶信息的代碼如下:

public boolean serchuser(HttpServletRequest request,HttpServletResponse response)

{ boolean isadmin=isAdmin(request,response);

if(!isadmin)

return isadmin;

DBCONN d=new DBCONN();

try{d.connect();

String sql="select * from member";//member為用戶表

Statement selstmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

Statement rs=selstmt.executeQuery(sql);

while(rs.next())

{

System.out.println(“用戶名:”+rs.getString(1)+”真實(shí)姓名:”+rs.getString(2)+”地址:”+ rs.getString(3));

}

}

catch(Exception e)

{System.out.print(e);}

finally

{ rs.close();

selstmt.close();

}

return isadmin;

}

(4)數(shù)據(jù)模式的選取

在網(wǎng)上書(shū)店系統(tǒng)設(shè)計(jì)中我們采用了集中式數(shù)據(jù)庫(kù)模式,選用了MicroSoft SQL Server2000數(shù)據(jù)庫(kù),它能處理大量數(shù)據(jù),同時(shí)保持?jǐn)?shù)據(jù)庫(kù)的完整性并提供許多高級(jí)管理數(shù)據(jù)功能。它的靈活性、易用性和安全性給數(shù)據(jù)庫(kù)編程提供了大大的方便。

3 結(jié) 語(yǔ)

本文設(shè)計(jì)了一個(gè)基于J2EE的網(wǎng)上書(shū)店系統(tǒng),使用了MVC結(jié)構(gòu),將數(shù)據(jù)、專業(yè)邏輯、表示邏輯、控制邏輯很好地分離開(kāi)。提高了程序的可重用性、可維護(hù)性、可擴(kuò)展性,優(yōu)化了設(shè)計(jì)模式。

參考文獻(xiàn)

[1]孫衛(wèi)琴,李洪成.Tomcat與Java Web開(kāi)發(fā)技術(shù)詳解[M].北京:電子

工業(yè)出版社,2004.

[2]John Hunt,Chris Loftus.精通J2EE———Java企業(yè)級(jí)應(yīng)用[M].周立斌,譯.北京:清華大學(xué)出版社,2004.

[3]Deepak Alur,John Crupi,Dan Malks.J2EE核心模式[M].2版.劉天北,熊節(jié),譯.北京:機(jī)械工業(yè)出版社,2005.

[4]馮相中,王萍 基于J2EE平臺(tái)的MVC模式的辦公日志系統(tǒng)的實(shí)現(xiàn)[J]計(jì)算機(jī)應(yīng)用 2005.12

注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文

主站蜘蛛池模板: 久久久久人妻精品一区三寸蜜桃| 久久精品无码专区免费| 国产成人AV综合久久| 中文字幕有乳无码| 40岁成熟女人牲交片免费| 福利一区三区| 乱人伦99久久| 青青青国产精品国产精品美女| 成年人免费国产视频| 亚洲中文字幕久久精品无码一区| 国产va在线观看免费| 中文字幕1区2区| 国产精品色婷婷在线观看| 精品亚洲国产成人AV| 亚洲IV视频免费在线光看| 欧美一区二区三区不卡免费| 国产精品亚洲综合久久小说| 国产情侣一区二区三区| 亚洲国产成人精品一二区| 国产成人精品无码一区二| 亚洲一区第一页| 欧美一区精品| 高清无码一本到东京热| 婷婷伊人久久| 亚洲成a人在线播放www| 无码不卡的中文字幕视频| 亚洲一本大道在线| 亚洲免费成人网| 欧美激情综合| 香蕉精品在线| 欧美成人区| 99久久精品国产麻豆婷婷| 国产成年女人特黄特色大片免费| 亚洲天堂自拍| 国产午夜人做人免费视频中文| 国产亚洲精品97AA片在线播放| 亚洲国产av无码综合原创国产| 午夜久久影院| 亚洲无码一区在线观看| 久久黄色小视频| 国产精品密蕾丝视频| 啊嗯不日本网站| 亚洲天堂福利视频| 国产成人综合亚洲欧美在| 国产精品网拍在线| 99久久国产精品无码| 亚洲国产成人精品无码区性色| 国产一区二区影院| 91久久国产综合精品| 中国丰满人妻无码束缚啪啪| 国产日本一线在线观看免费| 日韩资源站| 首页亚洲国产丝袜长腿综合| 亚洲成a人片在线观看88| 欧美午夜网站| 亚洲综合色吧| 人妻中文久热无码丝袜| 国产综合精品一区二区| 国产成人亚洲毛片| 国产精品尤物铁牛tv| 青青草原国产一区二区| 国产视频大全| 日韩在线2020专区| 国产在线拍偷自揄观看视频网站| 国产成人精品亚洲77美色| 无码中文字幕加勒比高清| 午夜精品久久久久久久99热下载| 成人综合网址| 久久精品人妻中文系列| 国产成人欧美| AⅤ色综合久久天堂AV色综合| 国产成人欧美| 欧美性爱精品一区二区三区 | 国产在线97| 亚洲国产精品不卡在线| 伊人色天堂| 久久久久无码国产精品不卡| 成年片色大黄全免费网站久久| 国产精品久久久久久久久kt| 精品第一国产综合精品Aⅴ| 国产精品太粉嫩高中在线观看| 久久综合色播五月男人的天堂|