国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

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

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

況嫦娥 李俊

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

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

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

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

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

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

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

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

(1)前臺頁面顯示

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

(2) 數(shù)據(jù)訪問對象DBCONN.java

此JavaBean專門用于數(shù)據(jù)庫訪問,包括查詢、插入、修改、刪除。首先采用connect()與數(shù)據(jù)庫連接,然后調(diào)用相應(yīng)的方法來實現(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ù)庫的

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ù)對象模型DFFCONL.java

業(yè)務(wù)對象模型用于實現(xiàn)網(wǎng)上書店系統(tǒng)的各種業(yè)務(wù)邏輯,如新增圖書,查看用戶信息等。用戶執(zhí)行每一個操作,即此JavaBean的一個方法,都要先對用戶權(quán)限進(jì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)+”真實姓名:”+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)上書店系統(tǒng)設(shè)計中我們采用了集中式數(shù)據(jù)庫模式,選用了MicroSoft SQL Server2000數(shù)據(jù)庫,它能處理大量數(shù)據(jù),同時保持?jǐn)?shù)據(jù)庫的完整性并提供許多高級管理數(shù)據(jù)功能。它的靈活性、易用性和安全性給數(shù)據(jù)庫編程提供了大大的方便。

3 結(jié) 語

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

參考文獻(xiàn)

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

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

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

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

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

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

武胜县| 宜川县| 榆中县| 巩义市| 河西区| 潮安县| 林周县| 肥东县| 平舆县| 尤溪县| 修水县| 灵石县| 岳阳县| 台安县| 乐安县| 开远市| 山丹县| 霞浦县| 天峨县| 铜川市| 吉隆县| 普宁市| 梅河口市| 平陆县| 中江县| 嘉禾县| 桦南县| 大兴区| 丹阳市| 梁平县| 临泉县| 泽普县| 鄱阳县| 革吉县| 乌拉特中旗| 伊吾县| 舟山市| 屏山县| 永丰县| 阿拉善左旗| 锡林郭勒盟|