畢業(yè)論文---小區(qū)車輛智能管理系統(tǒng)_第1頁
已閱讀1頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  本科生畢業(yè)論文(設(shè)計)</p><p>  題目:“xx”海景小區(qū)車輛智能管理系統(tǒng) </p><p>  年 月 日</p><p>  摘 要 </p><p>  隨著小區(qū)物業(yè)水平

2、的提高,小區(qū)車輛管理系統(tǒng)已經(jīng)成為目前實際應(yīng)用中的常見而重要的一種運作系統(tǒng)體系。本文以小區(qū)的發(fā)展現(xiàn)狀為背景,分析了以往小區(qū)對車輛管理方面的不足,及推廣小區(qū)車輛管理系統(tǒng)的必要性和可行性。小區(qū)車輛管理系統(tǒng)是典型的管理信息系統(tǒng),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備、界面友好、容易使用等特點。</p><p

3、>  作為對經(jīng)典的MVC設(shè)計模式的一種具體實現(xiàn),Struts是建立在當(dāng)前動態(tài)網(wǎng)站設(shè)計中jsp,servlet,xml等相關(guān)開發(fā)技術(shù)基礎(chǔ)之上的一種主流的開發(fā)架構(gòu),它跟Tomcat、Turbine等諸多Apache項目一樣,是開源軟件,這是它的一大優(yōu)點。使開發(fā)者能更深入的了解其內(nèi)部實現(xiàn)機制。另外,就目前國內(nèi)的JSP開發(fā)者而言,除了使用JSP自帶的常用標(biāo)記外,很少開發(fā)自己的標(biāo)記,或許Struts是一個很好的起點。雖然它現(xiàn)在還有不少缺點,

4、但它是一種非常優(yōu)秀的J2EE MVC實現(xiàn)方式。</p><p>  關(guān)鍵詞:Struts,J2EE,MVC</p><p><b>  Abstract</b></p><p>  This thesis takes current state of the development of the residence industry as th

5、e background, has analysed the deficiency under the traditional management mode of my State Residence industry, have explained the necessity of the housekeeping informationization of the residential area.</p><

6、p>  The management system of vehicles is management system is a typical managing information system (MIS). It's development is composed of two parts, including the establishment and maintenance of the database at

7、the background as well as the programming exploitation at the front platform. This vehicles management system, designed to improve the managing efficiency, has accomplished many functions such as the normative and scient

8、ific management of the cars information, looking up the cars’ informati</p><p>  Nowadays,In the software developing field,Java plus Jsp is the Mainstream technology. As the classics MVC design pattern one k

9、ind of concreterealization, struts is the establishment in the current dynamicwebsite design jsp, servlet, correlation development technology baseand so on the above xml one kind of mainstream development overheadconstru

10、ction, is one kind based on the MVC classics MVC design patternframe. Struts with Tomcat, Turbine and so on many Apache project is same,operates source so</p><p>  Key Words:Struts,J2EE,MVC</p><p&

11、gt;<b>  目 錄</b></p><p><b>  1 引言1</b></p><p>  2 開發(fā)技術(shù)介紹2</p><p>  2.1 B/S模式2</p><p>  2.1.1 何為B/S模式2</p><p>  2.1.2 B/S模式的優(yōu)點2&

12、lt;/p><p>  2.2 Struts架構(gòu)2</p><p>  2.2.1 Struts架構(gòu)的由來與發(fā)展2</p><p>  2.2.2 Struts架構(gòu)的前景3</p><p>  2.3 開發(fā)環(huán)境3</p><p>  2.3.1 硬件環(huán)境3</p><p>  2.2.2

13、軟件環(huán)境3</p><p>  3 程序設(shè)計的主體內(nèi)容4</p><p>  3.1 數(shù)據(jù)庫設(shè)計4</p><p>  3.1.1 數(shù)據(jù)庫分析4</p><p>  3.1.2 數(shù)據(jù)庫實體關(guān)系設(shè)計4</p><p>  3.1.3 系統(tǒng)數(shù)據(jù)字典5</p><p>  3.2 系統(tǒng)概要

14、設(shè)計6</p><p>  3.3 系統(tǒng)詳細設(shè)計7</p><p>  3.3.1 登陸模塊的設(shè)計7</p><p>  3.3.2 車輛信息模塊的設(shè)計7</p><p>  3.3.2 車輛付費方式模塊的設(shè)計8</p><p>  3.3.3 用戶信息模塊的設(shè)計8</p><p>

15、  3.3.4 日志模塊的設(shè)計9</p><p>  4 系統(tǒng)功能的實現(xiàn)與結(jié)果10</p><p>  4.1 登錄模塊的實現(xiàn)與結(jié)果10</p><p>  4.2 主要信息版塊的實現(xiàn)與結(jié)果10</p><p>  4.2.1 車輛信息模塊的實現(xiàn)10</p><p>  4.2.2 車輛付費方式模塊的實現(xiàn)1

16、2</p><p>  4.2.3 用戶信息模塊的實現(xiàn)13</p><p>  4.2.4 日志模塊的實現(xiàn)16</p><p>  5 系統(tǒng)開發(fā)難點與技巧19</p><p>  5.1 系統(tǒng)開發(fā)中遇到的問題19</p><p>  5.1.1 中文亂碼問題的解決方法19</p><p&g

17、t;  5.1.2 在JSP和Bean中加載數(shù)據(jù)庫驅(qū)動19</p><p>  5.1.3 Java類名的命名規(guī)范19</p><p>  5.2 系統(tǒng)開發(fā)中采用的小技巧19</p><p>  5.2.1代碼進行模塊化處理及工廠方法的應(yīng)用19</p><p>  5.2.2 單例模式20</p><p>&

18、lt;b>  6 總結(jié)21</b></p><p><b>  致 謝22</b></p><p><b>  [參考文獻]23</b></p><p><b>  1 引言</b></p><p>  中國互聯(lián)網(wǎng)經(jīng)過10年的持續(xù)發(fā)展,目前在普及和應(yīng)用上

19、正步入嶄新的多元化應(yīng)用階段。尋求在軟件開發(fā)過程中設(shè)計級的重用的想法由來已久,這個領(lǐng)域的一個突破就是設(shè)計模式的提出。所謂設(shè)計模式,實際上就是對以往成功的解決方案的重復(fù)利用。具有低耦合和高重用性和可適用性等多種有點的MVC模式是應(yīng)用比較多的一種設(shè)計模式,很多的項目,運用MVC這一設(shè)計思想,并已將其做成了web框架[1]。web框架有很多,這里只使用Struts框架作為研究對象。</p><p>  本課題主要運用St

20、ruts框架結(jié)構(gòu)針對小區(qū)車輛智能管理系統(tǒng)進行研究開發(fā)。小區(qū)車輛智能管理系統(tǒng)是典型的管理信息系統(tǒng),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強,數(shù)據(jù)安全性好的數(shù)據(jù)庫,而對于后者則要求應(yīng)用程序功能完備,界面友好,容易使用等特點。</p><p>  近幾年來,隨著我國經(jīng)濟的迅速發(fā)展,互聯(lián)網(wǎng)和多媒體的迅速普及,智能化的管理系統(tǒng)被引入到日常生活中。傳統(tǒng)的管理系

21、統(tǒng)采用客戶機/服務(wù)器結(jié)構(gòu),既有高度的交互性,高效的用戶界面等優(yōu)點,但也存在數(shù)據(jù)交互和交互規(guī)則移至客戶端,代價高,維護成本高,缺少中央控制,多媒體要素不易擴展等缺點?;诳蛻魴C的瀏覽器/服務(wù)器結(jié)構(gòu)克服了以上缺點,由于web服務(wù)器將瀏覽器的界面布局,人及交互形式以及界面間邏輯關(guān)系設(shè)在服務(wù)器端定義,從而保證了界面的完整清晰易維護,并且使前臺客戶機的負載減到最小[2]。目前在我國,小區(qū)的物業(yè)管理正處于一個發(fā)展的階段。小區(qū)車輛管理系統(tǒng)隸屬于小區(qū)物

22、業(yè)管理中的重要一部分,同時也是小區(qū)高度科學(xué)化,規(guī)范化管理的一個重要體現(xiàn)。隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,小區(qū)管理系統(tǒng)也將會不斷完善。</p><p>  小區(qū)車輛智能管理系統(tǒng)的引入從本質(zhì)上顛覆了以往小區(qū)車輛信息采用人工手動管理的狀態(tài)。它可以實現(xiàn)對車輛管理的科學(xué)化,規(guī)范化。同時涵蓋對用戶的注冊,顯示用戶信息,用戶信息更改及刪除的功能,使用戶信息清晰透明。車輛收費記錄功能,明確顯示了各類型車輛的收費標(biāo)準(zhǔn),日志功能使系統(tǒng)更加

23、完整。全面記錄了每天每時發(fā)生的信息,確保第一時間了解小區(qū)車輛及車主狀況??偟膩碚f,小區(qū)車輛智能管理系統(tǒng)有助于提高小區(qū)車輛信息管理的效率,主要是為了方便小區(qū)對車輛的實際情況進行集中的管理工作,以提高整個小區(qū)的物業(yè)工作。</p><p><b>  2 開發(fā)技術(shù)介紹</b></p><p><b>  2.1 B/S模式</b></p>

24、<p>  2.1.1 何為B/S模式</p><p>  B/S結(jié)構(gòu)(Browser/Server,瀏覽器/服務(wù)器模式):是WEB興起后的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,WEB瀏覽器是客戶端最主要的應(yīng)用軟件。這種模式統(tǒng)一了客戶端,將系統(tǒng)功能實現(xiàn)的核心部分集中到服務(wù)器上,簡化了系統(tǒng)的開發(fā)、維護和使用[3]。 </p><p>  客戶機上只要安裝一個瀏覽器(Browser),如Netscap

25、e Navigator或Internet Explorer,服務(wù)器安裝Oracle、Sybase、Informix或 SQL Server等數(shù)據(jù)庫。瀏覽器通過Web Server 同數(shù)據(jù)庫進行數(shù)據(jù)交互。工作原理如圖1-1所示。</p><p>  圖1-1 瀏覽器/服務(wù)器(B/S)模式工作原理</p><p>  2.1.2 B/S模式的優(yōu)點</p><p> 

26、 B/S結(jié)構(gòu)最大的優(yōu)點就是可以在任何地方進行操作而不用安裝任何專門的軟件。只要有一臺能上網(wǎng)的電腦就能使用,客戶端零維護。系統(tǒng)的擴展非常容易,只要能上網(wǎng),再由系統(tǒng)管理員分配一個用戶名和密碼,就可以使用了。大大的減輕了服務(wù)器的負擔(dān);并增加了交互性。同時,B/S模式還具有維護和升級方式簡單的優(yōu)點。目前,軟件系統(tǒng)的改進和升級越來越頻繁,B/S架構(gòu)的產(chǎn)品明顯體現(xiàn)著更為方便的特性[4]。</p><p>  2.2 Stru

27、ts架構(gòu)</p><p>  2.2.1 Struts架構(gòu)的由來與發(fā)展</p><p>  Struts最早是作為Apache Jakarta項目的組成部分,項目的創(chuàng)立者希望通過對該項目的研究,改進和提高JavaServer Pages 、Servlet、標(biāo)簽庫以及面向?qū)ο蟮募夹g(shù)水準(zhǔn)。Struts這個名字來源于在建筑和舊式飛機中使用的支持金屬架。這個框架之所以叫”Struts”,是為了提醒

28、我們記住那些支撐我們房屋,建筑,橋梁,甚至我們踩高蹺時候的基礎(chǔ)支撐。這也是一個解釋Struts在開發(fā)Web應(yīng)用程序中所扮演的角色的精彩描述[5]。當(dāng)建立一個物理建筑時,建筑工程師使用支柱為建筑的每一層提供支持。同樣,軟件工程師使用Struts為業(yè)務(wù)應(yīng)用的每一層提供支持。它的目的是為了幫助我們減少在運用MVC設(shè)計模型來開發(fā)Web應(yīng)用的時間。Struts框架一經(jīng)推出,即受到了個Java開發(fā)群體的廣泛重視,從2004年開始逐漸升溫,并日漸成為

29、Java創(chuàng)建web應(yīng)用開發(fā)的最流行的框架工具,精通Struts架構(gòu)已經(jīng)成為Java web程序員必備的技能。</p><p>  2.2.2 Struts架構(gòu)的前景</p><p>  近來流行起來的Struts2在WebWork的基礎(chǔ)上有了比Struts有了更加革新的改進。在Struts原有的優(yōu)點上又更加保證了它的穩(wěn)定性,而且吸收了Struts和WebWork兩者的優(yōu)勢,非常值得期待。由

30、此可見,Struts框架的發(fā)展空間依然很廣闊,無論是目前已經(jīng)成為主流框架結(jié)構(gòu)的Struts還是蓄勢待發(fā)的Struts2都將在未來幾年里成為廣大程序員的“寵兒”并將它們的優(yōu)勢發(fā)揮得淋漓盡致。</p><p><b>  2.3 開發(fā)環(huán)境</b></p><p>  2.3.1 硬件環(huán)境</p><p>  操作系統(tǒng):WindowsXP,CPU:P

31、4, 內(nèi)存:1G;</p><p>  2.2.2 軟件環(huán)境</p><p>  工具:Eclipse3.4,JDK1.5;WEB服務(wù)器:Tomcat6.0;數(shù)據(jù)庫:MySQL6.0;</p><p>  3 程序設(shè)計的主體內(nèi)容</p><p><b>  3.1 數(shù)據(jù)庫設(shè)計</b></p><p&g

32、t;  3.1.1 數(shù)據(jù)庫分析</p><p>  作為一個具有一定應(yīng)用價值的系統(tǒng),從本質(zhì)上說其操作的對象為數(shù)據(jù)庫中存儲的具體記錄。因此不僅要求所使用的數(shù)據(jù)庫具有比較高的穩(wěn)定性,安全性及高負載下保持足夠響應(yīng)的能力,還要求作出科學(xué)的數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計,以提高數(shù)據(jù)庫的利用效率和減少數(shù)據(jù)冗余。</p><p>  MySQL是一種開放源代碼的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),MySQL數(shù)據(jù)庫系

33、統(tǒng)使用最常用的數(shù)據(jù)庫管理語言--結(jié)構(gòu)化查詢語言(SQL)進行數(shù)據(jù)庫管理[6]。MySQL因為其速度、可靠性和適應(yīng)性而備受關(guān)注。大多數(shù)人都認為在不需要事務(wù)化處理的情況下,MySQL是管理內(nèi)容最好的選擇。同時,MySQL 還支持在同一計算機上同時運行多個關(guān)系數(shù)據(jù)庫實例每個實例有其獨立的系統(tǒng)和用戶數(shù)據(jù)庫集合應(yīng)用程序采用與連接不同計算機上的SQL Server 實例大致相同的方式連接同一計算機上的各個實例[7]??紤]到以上諸多優(yōu)點,本系統(tǒng)采用M

34、ySQL作為后臺數(shù)據(jù)庫。MySQL 引進了數(shù)據(jù)庫和服務(wù)器增強功能以及其它一些新的特性。</p><p>  (1) XML Extensible Markup Language 擴展標(biāo)示語言支持</p><p>  (2) 新數(shù)據(jù)類型New Data Types </p><p>  (3) 數(shù)據(jù)行中的Text 類型數(shù)據(jù)</p><p>  

35、(4) 用戶自定義函數(shù)User-Defined Functions </p><p>  (5) 索引Index 增強</p><p>  (6) 全文檢索Full-Text Search 增強</p><p>  3.1.2 數(shù)據(jù)庫實體關(guān)系設(shè)計</p><p>  從系統(tǒng)設(shè)計的實際情況出發(fā),通過分析,我們可以設(shè)計出數(shù)據(jù)庫的邏輯結(jié)構(gòu)E—R圖,

36、即實體—關(guān)系圖,從而建立數(shù)據(jù)庫的物理結(jié)構(gòu)即表結(jié)構(gòu)。所謂實體反映到數(shù)據(jù)庫中即為數(shù)據(jù)表,它存儲著具體的記錄信息;所謂關(guān)系,即表與表之間的聯(lián)系,這種聯(lián)系大多是通過外鍵(Foreign Key)實現(xiàn)的。根據(jù)需求,設(shè)計了四個表系統(tǒng)數(shù)據(jù)庫(car_management):車輛信息模塊表(cars),付費方式表(cost_style),用戶信息表(host),日志表(log),系統(tǒng)數(shù)據(jù)庫E-R圖如圖3-1所示。</p><p>

37、;  圖3-1 系統(tǒng)實體關(guān)系圖(E-R圖)</p><p>  注:上圖中實體用矩形表示,屬性用橢圓表示,各實體的主鍵屬性下方用橫線標(biāo)注。</p><p>  3.1.3 系統(tǒng)數(shù)據(jù)字典</p><p>  確定了數(shù)據(jù)庫的邏輯結(jié)構(gòu)之后,接下來需要做的就是將這些概念性的,邏輯性的東西轉(zhuǎn)化為數(shù)據(jù)庫中能夠存放信息的數(shù)據(jù)表。數(shù)據(jù)庫car_management包含以下7張表:車

38、輛信息表(cars),付費方式表(cost_style),車輛狀態(tài)表(current_statement),用戶信息表(host),車輛進出記錄表(in_out_record),日志表(log),管理員表(user)。</p><p><b>  1、車輛信息表</b></p><p>  車輛信息表(cars)用來保存有關(guān)車輛的基本信息,表的結(jié)構(gòu)如表3-2所示。&l

39、t;/p><p>  表3-2 車輛信息表(cars)</p><p><b>  2、收費方式表</b></p><p>  收費方式表(cost_style)用來保存不同停放方式的收費信息,表的結(jié)構(gòu)如表3-3所示。</p><p>  表3-3 收費方式表(cost_style)</p><p>

40、<b>  3、用戶信息表</b></p><p>  用戶信息表(cost_style)用來保存車主用戶的相關(guān)信息,表的結(jié)構(gòu)如表3-4所示。</p><p>  表3-4 用戶信息表(host)</p><p><b>  4、日志表</b></p><p>  日志表(log)用來保存日志的相關(guān)

41、信息,表的結(jié)構(gòu)如圖3-5所示</p><p>  表3-5 用戶信息表(host)</p><p>  3.2 系統(tǒng)概要設(shè)計</p><p>  該系統(tǒng)主要由四個模塊組成,分別是車輛信息模塊,車輛付費方式模塊,用戶信息模塊以及日志模塊。車輛信息模塊的功能包括新入車輛的注冊,查詢,車輛信息的更改。車輛付費方式模塊主要展示了各種付費方式的價格標(biāo)準(zhǔn)。用戶信息模塊涵蓋了與用

42、戶相關(guān)的所有操作。包括新用戶注冊,用戶信息查詢,用戶信息更改與刪除。日志模塊包含了添加,查詢?nèi)罩?,以及對日志信息的更改和刪除功能。</p><p>  3.3 系統(tǒng)詳細設(shè)計</p><p>  3.3.1 登陸模塊的設(shè)計</p><p>  點擊“登錄”按鈕,進入用戶登錄界面。輸入用戶名和密碼,判斷是否登錄成功。如果用戶名和密碼正確,進入到主頁面(mainPage.

43、jsp)。在此頁面將顯示所有相關(guān)操作的連接。點擊超級鏈接,進入相應(yīng)的模塊。如果用戶名和密碼不正確,不能完成登錄功能,系統(tǒng)報錯。該模塊涉及到的頁面有enter.jsp。該頁面將提交一個名字為enterCheck.do的請求。再到sturts-config.xml配置文件中找到相應(yīng)的請求,執(zhí)行相應(yīng)的操作。具體流程如圖3-6所示。</p><p>  圖3-6 登錄界面流程</p><p>  

44、3.3.2 車輛信息模塊的設(shè)計</p><p>  在主頁(mainPage.jsp)中點擊“車輛信息”鏈接,進入到車輛信息主頁(CarsMain.jsp),這一頁面有車輛注冊和車輛信息一覽兩個相關(guān)鏈接。點擊“車輛一覽”進入到一覽頁面。可完成車輛信息一覽,快速查詢,新入車輛注冊及修改功能。在CarsMain.jsp頁面點擊“新入車輛注冊”進入新入車輛注冊界面,同樣可以完成車輛注冊功能。該模塊涉及到的前臺頁面有Ca

45、rsMain.jsp,CarsInformation.jsp.CarReigster.jsp,CarModify.jsp.后臺持久化層部分涉及到CarsDao.java以及相應(yīng)各個層次的Java類。具體流程如圖3-7所示。</p><p>  圖3-7 車輛信息模塊流程</p><p>  3.3.2 車輛付費方式模塊的設(shè)計</p><p>  在主頁面(mainP

46、age.jsp)中點擊“付費方式”鏈接,進入到車輛付費方式主頁,這一頁面將顯示與車輛付費相關(guān)的信息。本系統(tǒng)共設(shè)計四種付費方式。用戶通過該頁面可以清楚地了解到每種收費方式的具體內(nèi)容。該模塊涉及到的前臺頁面有CostStyle.jsp</p><p>  3.3.3 用戶信息模塊的設(shè)計</p><p>  在主頁面(mainPage.jsp)中點擊“用戶信息”鏈接,進入到用戶信息主頁(Host

47、Main.jsp),這一頁面有用戶一覽和新用戶注冊兩個相關(guān)鏈接。點擊“用戶一覽”進入到一覽頁面。可完成用戶信息一覽,快速查詢用戶信息,注冊、修改和刪除用戶的功能。在HostMain.jsp頁面點擊“新用戶注冊”進入新用戶注冊界面,同樣可以完成新入用戶注冊功能。該模塊涉及到的前臺代碼有HostMain.jsp,HostsInfromation.jsp,HostsInformationFast.jsp,HostRegister.jsp,Ho

48、stModify.jsp,后臺涉及到從持久化層(dao)到Service層,form層和控制層(action)各個包中與Host有關(guān)的所有Java類。具體流程如圖3-8所示。</p><p>  圖3-8 用戶信息模塊流程</p><p>  3.3.4 日志模塊的設(shè)計</p><p>  在主頁面(mainPage.jsp)中點擊“日志”鏈接,進入到日志信息主頁(

49、LogMain.jsp),點擊“日志一覽”進入到一覽頁面。在LogMain.jsp頁面點擊“新用戶注冊”同樣可以完成新入用戶注冊功能。該模塊涉及到的前臺代碼包括LogsMain.jsp,LogsDisplay.jsp,LogsInformatinFast.jsp,LogInsert.jsp,后臺涉及到從持久化層(dao)到Service層,form層和控制層(action)各個包中與Log有關(guān)的所有Java類。具體流程如圖3-9所示。&

50、lt;/p><p>  圖3-9 日志模塊流程</p><p>  4 系統(tǒng)功能的實現(xiàn)與結(jié)果</p><p>  4.1 登錄模塊的實現(xiàn)與結(jié)果</p><p>  為了保證系統(tǒng)的安全性,設(shè)置一個登陸界面,輸入用戶名和密碼。使得用戶只能通過登陸界面進行登陸,無法直接瀏覽系統(tǒng)。系統(tǒng)登錄的具體效果如圖4-1所示。</p><p>

51、;  圖4-1 系統(tǒng)登錄界面</p><p>  4.2 主要信息版塊的實現(xiàn)與結(jié)果</p><p>  4.2.1 車輛信息模塊的實現(xiàn)</p><p>  登錄成功后,進入到mainPage.jsp頁面。通過這一版塊中的<a href=”CarsMain.jsp”>可鏈接到車輛資源CarsMain.jsp,點擊超級鏈接”車輛信息”后便進入到車輛信息模塊主

52、頁CarsMain.jsp頁面。系統(tǒng)功能主頁如圖4-2所示。車輛信息模塊主頁如圖4-3所示。</p><p>  圖4-2 系統(tǒng)功能主頁</p><p>  圖4-3 車輛信息模塊主頁</p><p>  1、車輛信息一覽頁面</p><p>  在CarsMain.jsp頁面中存在兩個超級鏈接。當(dāng)點擊超級鏈接”車輛一覽”時進入車輛信息一覽頁

53、面,在這一頁面可以實現(xiàn)對車輛信息的顯示與更改(查詢,和刪除)功能。車輛信息顯示結(jié)果如圖4-4所示,車輛信息更改頁面如圖4-5所示。</p><p>  圖4-4 車輛信息顯示頁面</p><p>  圖4-5 車輛信息更改頁面</p><p>  2、新入車輛注冊頁面</p><p>  同樣,在CarsMain.jsp頁面當(dāng)點擊超級鏈接”新

54、入車輛注冊”時進入到車輛注冊界面。頁面如圖4-6所示。</p><p>  圖4-6 新入車輛注冊頁面</p><p>  4.2.2 車輛付費方式模塊的實現(xiàn)</p><p>  點擊mainPage.jsp頁面的超級鏈接”CostStyle.jsp”進入到車輛收費方式界面,這一頁面顯示了各種收費方式的詳細信息。詳細內(nèi)容如圖4-7所示。</p><

55、;p>  圖4-7 車輛收費方式頁面</p><p>  4.2.3 用戶信息模塊的實現(xiàn)</p><p>  登錄成功后,進入到mainPage.jsp頁面。通過這一版塊中的<a href=”HostMain.jsp”>可鏈接到車輛資源HostMain.jsp,點擊超級鏈接”用戶信息”后便進入到用戶信息模塊主頁HostMain.jsp頁面。如圖4-8所示。</p&g

56、t;<p>  圖4-8 用戶信息模塊主頁</p><p>  1、用戶信息一覽頁面</p><p>  在HostMain.jsp頁面同樣存在兩個超級鏈接。當(dāng)點擊超級鏈接”用戶一覽”時進入用戶信息一覽頁面,在這一頁面可以實現(xiàn)對用戶信息的顯示、查詢、更改和刪除的功能。用戶信息一覽結(jié)果如圖4-9所示,用戶信息查詢頁面如圖4-10所示,查詢結(jié)果結(jié)果如圖4-11所示,用戶信息更改頁

57、面如圖4-12所示。當(dāng)管理員要刪除某一用戶信息時系統(tǒng)會彈出對話框讓管理員確認是否刪除,界面如圖4-13所示。</p><p>  圖4-9 用戶信息一覽頁面</p><p>  圖4-10 用戶信息查詢頁面</p><p>  圖4-11 用戶信息查詢結(jié)果顯示頁面</p><p>  圖4-12 用戶信息更改頁面</p><

58、;p>  圖4-13 用戶信息刪除頁面</p><p><b>  2、新用戶注冊頁面</b></p><p>  同樣,在HostMain.jsp頁面當(dāng)點擊超級鏈接”新用戶注冊”時進入用戶注冊界面。頁面如圖4-14所示。</p><p>  圖4-14 新入用戶注冊頁面</p><p>  4.2.4 日志模塊的

59、實現(xiàn)</p><p>  登錄成功后,進入到mainPage.jsp頁面。通過這一版塊中的<a href=”LogMain.jsp”>可鏈接到日志資源LogMain.jsp,點擊超級鏈接”日志空間”后便進入到日志模塊主頁LogMain.jsp頁面。如圖4-15所示。</p><p>  圖4-15 日志信息模塊主頁</p><p><b>  

60、1、日志一覽頁面</b></p><p>  在LogMain.jsp頁面中存在兩個超級鏈接。當(dāng)點擊超級鏈接”日志一覽”時進入日志一覽頁面,在這一頁面可以實現(xiàn)對用日志的顯示、查詢、更改和刪除的功能。日志一覽結(jié)果如圖4-16所示,日志查詢?nèi)鐖D4-17所示,查詢結(jié)果如圖4-18所示,日志更改頁面如圖4-19所示。當(dāng)管理員要刪除某一日志信息時系統(tǒng)會彈出對話框讓管理員確認是否刪除,界面如圖4-20所示。<

61、;/p><p>  圖4-16 日志一覽頁面</p><p>  圖4-17 日志查詢頁面</p><p>  圖4-18 查詢結(jié)果顯示頁面</p><p>  圖4-19 日志更改頁面</p><p>  圖4-20 日志刪除頁面</p><p><b>  2、添加新日志頁面</

62、b></p><p>  同樣,當(dāng)點擊超級鏈接”添加日志信息”時進入添加日志界面。頁面如圖4-21所示。</p><p>  圖4-21 添加日志頁面</p><p>  5 系統(tǒng)開發(fā)難點與技巧</p><p>  5.1 系統(tǒng)開發(fā)中遇到的問題</p><p>  在系統(tǒng)的開發(fā)過程中,我遇到了一些問題和難點。通過

63、查閱書籍請教老師這些問題基本都得到解決,現(xiàn)將系統(tǒng)開發(fā)過程中遇到的問題與解決技巧總結(jié)如下:</p><p>  5.1.1 中文亂碼問題的解決方法</p><p>  在JSP頁面中首先,在HTML的head標(biāo)簽內(nèi)加入meta信息為<meta HTTP-EQUIV=”content-type” CONTENT=”text/html; charset=utf-8” >其作用是告訴客

64、戶端瀏覽器,這個HTML為utf-8編碼文件。在JSP中加入以下的一句編譯指令,定義JSP程序使用字符集為utf-8<%@ page contentype=”text/html; charset= utf-8”%>這樣就保證了JSP服務(wù)器引擎將會把JSP的輸出以utf-8編碼的形式輸出。</p><p>  5.1.2 在JSP和Bean中加載數(shù)據(jù)庫驅(qū)動</p><p>  加

65、載數(shù)據(jù)驅(qū)動需要三個JAVA包 ,下載后放在Tomcat目錄下的commom/lib文件夾下即可。接著使用JDBC驅(qū)動中的DriverManager類中的getconnectin()方法與數(shù)據(jù)庫建立連接。Connection conn=Driver Manager.getConnection(url,user,password)。</p><p>  5.1.3 Java類名的命名規(guī)范</p><

66、;p>  建立Bean類的時候注意。Java的類名必須與類的文件名稱相同,否則編譯會出錯。在編寫一個JSP程序時一定注意不要將大小寫混淆。另外,在瀏覽器的地址欄中輸入地址也是區(qū)分大小寫的。</p><p>  5.2 系統(tǒng)開發(fā)中采用的小技巧</p><p>  5.2.1代碼進行模塊化處理及工廠方法的應(yīng)用</p><p>  對代碼進行模塊化處理,可以提高代碼

67、的復(fù)用性及提高開發(fā)速度[8]。代碼的模塊化處理,包括將需要的進行復(fù)用的代碼編寫成一個子程序后者函數(shù),或者一個類,以便使用時進行調(diào)用。將代碼太長的函數(shù)按功能分解為幾個函數(shù)的調(diào)用,這些會大大提高程序的可讀性和維護性。工廠方法(FactoryMethod)模式是類的創(chuàng)建模式,其用意是定義一個創(chuàng)建產(chǎn)品對象的工廠接口,將實際創(chuàng)建工作推遲到子類中。</p><p>  工廠方法模式是簡單工廠模式的進一步抽象和推廣。由于使用了

68、多態(tài)性,工廠方法模式保持了簡單工廠模式的優(yōu)點,而且克服了它的缺點[9]。</p><p>  在工廠方法模式中,核心的工廠類不再負責(zé)所有產(chǎn)品的創(chuàng)建,而是將具體創(chuàng)建工作交給子類去做。這個核心類僅僅負責(zé)給出具體工廠必須實現(xiàn)的接口,而不接觸哪一個產(chǎn)品類被實例化這種細節(jié)。這使得工廠方法模式可以允許系統(tǒng)在不修改工廠角色的情況下引進新產(chǎn)品。例如,本系統(tǒng)在com.car_management.util包下的DbUtil類中編寫

69、了一個工廠方法getConnectin(),用來獲得與數(shù)據(jù)庫的連接。這樣,每個模塊都可以調(diào)用這個工廠方法來實現(xiàn)與數(shù)據(jù)庫的連接操作。這樣,減少了代碼量也高度實現(xiàn)了代碼的重用。</p><p>  5.2.2 單例模式</p><p>  單例模式(Singleton),也叫單子模式,是一種常用的軟件設(shè)計模式。在應(yīng)用這個模式時,單例對象的類必須保證只有一個實例存在。許多時候整個系統(tǒng)只需要擁有一

70、個的全局對象,這樣有利于我們協(xié)調(diào)系統(tǒng)整體的行為[10]。比如在某個服務(wù)器程序中,該服務(wù)器的配置信息存放在一個文件中,這些配置數(shù)據(jù)由一個單例對象統(tǒng)一讀取,然后服務(wù)進程中的其他對象再通過這個單例對象獲取這些配置信息。這種方式簡化了在復(fù)雜環(huán)境下的配置管理。</p><p>  實現(xiàn)單例模式的思路是:一個類能返回對象一個引用(永遠是同一個)和一個獲得該實例的方法(必須是靜態(tài)方法,通常使用getInstance這個名稱);

71、當(dāng)我們調(diào)用這個方法時,如果類持有的引用不為空就返回這個引用,如果類保持的引用為空就創(chuàng)建該類的實例并將實例的引用賦予該類保持的引用;同時我們還將該類的構(gòu)造函數(shù)定義為私有方法,這樣其他處的代碼就無法通過調(diào)用該類的構(gòu)造函數(shù)來實例化該類的對象,只有通過該類提供的靜態(tài)方法來得到該類的唯一實例。由此可見,單例模式有著如下的優(yōu)點:實例控制:單例模式防止其它對象對自己的實例化,確保所有的對象都訪問一個實例;伸縮性:因為由類自己來控制實例化進程,類就在改

72、變實例化進程上有相應(yīng)的伸縮性。誠然,在系統(tǒng)開銷上單例模式也存在著它的弊端。雖然這個系統(tǒng)開銷看起來很小,但是每次引用這個類實例的時候都要進行實例是否存在的檢查。這個問題可以通過靜態(tài)實例來解決。同時,當(dāng)使用一個單例模式的對象的時候(特別是定義在類庫中的),開發(fā)人員必須要記住不能使用new關(guān)鍵字來實例化對象。因為開發(fā)者看不到在類庫中的源代碼,所以當(dāng)他們發(fā)現(xiàn)不能實例化一個類的時候會很驚訝。這樣造成的開發(fā)混淆也不容輕視。我</p>

73、<p><b>  6 總結(jié)</b></p><p>  在學(xué)習(xí)了基于Windows的在線服務(wù)器體系結(jié)構(gòu)和JSP等在線開發(fā)技術(shù)的基礎(chǔ)上,我對于在線編程思想有了較深的理解。并且在小區(qū)車輛智能系統(tǒng)的開發(fā)過程中,進一步深化了我對于MVC及Struts框架的認識。本文著重討論了Web服務(wù)器端的編程實現(xiàn)情況,即對整個系統(tǒng)的登錄,及各個模塊的實現(xiàn)。 </p><p> 

74、 學(xué)習(xí)JSP與Struts框架的過程中,我深刻的感受到學(xué)好這項技術(shù)必須注意幾點內(nèi)容:首先要充分理解JSP的工作原理,為系統(tǒng)的建設(shè)打下堅實的基礎(chǔ);然后在JSP中正確使用類,而且要把類當(dāng)成JavaBean來用;方法應(yīng)該設(shè)計成簡單的功能性單元并且方法應(yīng)該簡明扼要;設(shè)計應(yīng)該思路清晰,同時注釋以及一些事例也是必須的;分析,設(shè)計,實施時要善于與別人進行交流,可以避免編程中的許多誤區(qū);JSP的調(diào)試也相當(dāng)關(guān)鍵。系統(tǒng)的基本功能已經(jīng)實現(xiàn),但是仍然存在一些問

75、題沒有解決。比如試題庫的實現(xiàn),登陸界面的加密等。同時,要深入了解Struts框架的思想,從分析問題到解決問題,要養(yǎng)成分層次分模塊考慮問題的思想和習(xí)慣。</p><p>  JSP語言是一門非常有用和有效的語言,具有結(jié)構(gòu)清晰,維護方便,保護代碼比較好的優(yōu)點。同時JSP相對于其他語言來說消耗空間較多,但是其全內(nèi)存操作帶來了效率的提升,所以可以說JSP在時間與空間的平衡中尋找到了一個黃金分割點[11]。</p&g

76、t;<p><b>  致 謝</b></p><p>  大學(xué)四年的學(xué)習(xí)生活即將結(jié)束,在此,我要感謝所有曾經(jīng)教導(dǎo)過我的老師和關(guān)心過我的同學(xué)和朋友們,他們在我成長過程中給予了我很大的幫助。本文能夠成功的完成,要特別感謝我的導(dǎo)師的關(guān)懷和教導(dǎo)。從最初的設(shè)計階段到實際編碼階段以及最后的論文撰寫階段,每一次遇到問題,指導(dǎo)老師都會耐心地給我講解并循序漸進地指引,不僅幫助我解決了問題還教會

77、了我解決問題的能力。同時,他嚴謹治學(xué)的態(tài)度、誨人不倦的工作熱情和求實務(wù)實的敬業(yè)精神以及樂觀幽默的人格魅力深深地感動了我。在此向我的指導(dǎo)老師表示我最崇高的敬意和衷心的感謝。</p><p>  同時,我要向我和我共同完成本系統(tǒng)的隊友表示真摯的感謝,她給了我克服困難的勇氣和解決問題的信心。也讓我懂得了團隊合作的重要性和力量。</p><p>  最后,我還要深深感謝所有對我的論文提出寶貴意見的

78、老師、同學(xué)和朋友們。感謝你們!并祝福所有的人,愿你們身體健康,工作順利!</p><p><b>  [參考文獻]</b></p><p>  [1] 孫衛(wèi)琴.精通Struts:基于MVC的Java Web設(shè)計與開發(fā)[M].北京:電子工業(yè)出版社,2004.8</p><p>  [2] 王國輝,李文立,楊亮.jsp數(shù)據(jù)庫系統(tǒng)開發(fā)完全手冊[M].

79、北京:人民郵電出版社,2006.3</p><p>  [3] 白勇.用B/S模式構(gòu)建學(xué)校管理信息系統(tǒng)[J].重慶電力高等??茖W(xué)校學(xué)報,1999.3 </p><p>  [4] 蔡永昶,采用B/S結(jié)構(gòu)的MIS的設(shè)計與實現(xiàn)[J].計算機與現(xiàn)代化,2006.6</p><p>  [5] 張桂元,賈燕楓.struts開發(fā)入門與項目實踐[M].北京:人民郵電出版社,20

80、05.9</p><p>  [6] 楊曉云(議).MySQL權(quán)威指南[M].北京:人民郵電出版社,2006.12.1</p><p>  [7] http://www.jz97.net/shujuku/mysql/index.html</p><p>  [8] Willian K, Michener, James W. Brunt & Susan G.

81、Stafford. Environmental Information Management and Analysis: Ecosystem to Global Scales, Taylor & Franics Ltd, London, Britain,1994</p><p>  [9] Thomas R. Peltier.Information Security Risk Analysis.Roths

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論