“明成天下-三國英雄行”游戲設(shè)計(jì)與開發(fā)_第1頁
“明成天下-三國英雄行”游戲設(shè)計(jì)與開發(fā)_第2頁
“明成天下-三國英雄行”游戲設(shè)計(jì)與開發(fā)_第3頁
“明成天下-三國英雄行”游戲設(shè)計(jì)與開發(fā)_第4頁
“明成天下-三國英雄行”游戲設(shè)計(jì)與開發(fā)_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

251緒論1.1選題背景三國是中國歷史上東漢與西晉之間的分裂對峙時(shí)期,有曹魏、蜀漢、東吳三個(gè)政權(quán)。三國時(shí)代波瀾壯闊,充滿生機(jī),常引起后人追思。晉代陳壽所著史書《三國志》,對研究三國歷史頗有參考價(jià)值。明代羅貫中以三國歷史為藍(lán)本,編撰小說《三國演義》成為中國四大名著之一,其豐富多彩的歷史內(nèi)涵也流傳到世界各地。時(shí)至今日,三國時(shí)期的人物及事件仍然是言談、文學(xué)、影視、游戲等各個(gè)方面的重要內(nèi)容。三國游戲在當(dāng)今已成為很熱門話題,選題以三國魏蜀吳為背景順應(yīng)大眾的需要,將會得到廣泛的關(guān)注,從而可以發(fā)揮此游戲的價(jià)值而Java的創(chuàng)建者把Java稱為“網(wǎng)絡(luò)編程語言”,且由于JAVA游戲一般來說簡單有趣,并且對用戶硬件要求極小,所以JAVA游戲通常對使用計(jì)算機(jī)的廣大用戶都有吸引力。1.2課題發(fā)展概況在人們逐步進(jìn)入信息時(shí)代后,電腦游戲使得人生變成了真正的游戲。在傳統(tǒng)中國社會中,文化、教育與知識是神圣的,莊嚴(yán)的,是天地君親師。這種傳統(tǒng)的體制,使人們在接受教育的過程中,就受到了束縛。如果誰把這種神圣的東西與游戲連在一起,就會被認(rèn)為是對圣賢的一種褻瀆。而現(xiàn)在,網(wǎng)絡(luò)技術(shù)和數(shù)字技術(shù)把文化、教育和知識都變成了娛樂變成了游戲,將它們從神壇上請下來,使它們變成了大眾的、平民的東西,可愛的、容易接受的東西。作為融合高科技的文化藝術(shù)產(chǎn)品,電腦除給人們的生活帶來聯(lián)想之外,它更能給使用者帶來更多現(xiàn)實(shí)中不能擁有的體驗(yàn),這正是當(dāng)今世上被看好的體驗(yàn)型經(jīng)濟(jì)的典型代表。隨著人民生活水平的提高,人們的生活模式和思想模式都發(fā)生著變化。電腦游戲業(yè)經(jīng)過多年發(fā)展,跌跌撞撞地走過來。應(yīng)該看到人們在電腦和互聯(lián)網(wǎng)帶來的時(shí)代標(biāo)志性變化中,電腦游戲市場的逐步完善與巨大的潛在能量,作為一種現(xiàn)代娛樂形式,其正在世界范圍內(nèi)創(chuàng)造巨大的市場空間和受眾群體。傳統(tǒng)的單機(jī)游戲曾風(fēng)靡一時(shí),游戲愛好者在簡單的打斗中獲得了虛幻世界的滿足,但過了一段時(shí)間后,單機(jī)游戲的模式由于不能滿足人們相互交流的愿望以及其內(nèi)容的簡單重復(fù),面對電腦的獨(dú)孤求敗總讓人有一種自以為是而又百無聊賴的感覺。逐漸失去了對用戶的吸引力,游戲愛好者期待著新的游戲模式出現(xiàn)。于是,電腦游戲開始朝著網(wǎng)絡(luò)游戲發(fā)展,隨著網(wǎng)絡(luò)建設(shè)快速發(fā)展,人們生活方式隨著時(shí)代發(fā)展而改變,網(wǎng)絡(luò)游戲迅速取代單機(jī)游戲成為了游戲玩家新的寵兒。1.3B/S架構(gòu)簡介瀏覽器和服務(wù)器架構(gòu)。無需在客戶機(jī)上安裝應(yīng)用軟件,只需要求客戶機(jī)裝有瀏覽器即可。瀏覽器和服務(wù)器架構(gòu)的特點(diǎn)和優(yōu)勢:(1)分布性強(qiáng),可以隨時(shí)隨地進(jìn)行查看游戲。(2)具有良好的擴(kuò)展性,通過增加網(wǎng)頁即可增加服務(wù)器功能。(3)維護(hù)簡單方便,只需要改變服務(wù)器端,就可以對所有用戶進(jìn)行同步的更新。1.4jQuery技術(shù)簡介jQuery是一個(gè)優(yōu)秀的Javascript框架。它是輕量級的js庫,它兼容CSS3,還兼容各種瀏覽器,jQuery使用戶能更方便地處理HTMLdocuments、events、實(shí)現(xiàn)動畫效果,并且方便地為網(wǎng)站提供AJAX交互。jQuery還有一個(gè)比較大的優(yōu)勢是,它的文檔說明很全,而且各種應(yīng)用也說得很詳細(xì),同時(shí)還有許多成熟的插件可供選擇。jQuery能夠使用戶的html頁面保持代碼和html內(nèi)容分離。1.5Ajax技術(shù)簡介Ajax的核心是JavaScript對象XmlHttpRequest,它是一種支持異步請求的技術(shù)。簡而言之,XmlHttpRequest使您可以使用JavaScript向服務(wù)器提出請求并處理響應(yīng),而不阻塞用戶,因特網(wǎng)應(yīng)用程序可以變得更完善,更友好。1.6MVC框架簡介M(Model,模型)、V(view,視圖)、C(controller,控制器)。是XeroxPARC在八十年代為編程語言Smalltalk-80發(fā)明的一種軟件設(shè)計(jì)模式,至今已被廣泛使用。最近幾年被推薦位Oracle旗下Sun公司JavaEE平臺的設(shè)計(jì)模式,并且受到越來越多的使用ColdFusion和PHP開發(fā)者的歡迎。MVC設(shè)計(jì)模式把程序的輸入、處理和輸出分開,使各個(gè)部件處理自己的任務(wù)。使程序有較高的重用性和適用性,并且有著較低的生命周期成本,有利于軟件工程化管理并具備較高的可維護(hù)性。1.7S2SH框架簡介S2(Struts2)、S(Spring)、H(Hibernate)三大框架相整合,Struts2采用攔截器機(jī)制處理用戶的請求,使業(yè)務(wù)邏輯控制與ServletAPI完全脫離開的框架,Spring是一個(gè)輕量級的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架,Hibernate是一個(gè)開源的對象關(guān)系映射框架,運(yùn)用它可使程序員使用對象編程思維操縱數(shù)據(jù)庫。1.8數(shù)據(jù)庫技術(shù)簡介數(shù)據(jù)庫技術(shù)是現(xiàn)代信息科學(xué)與技術(shù)的重要組成部分,是計(jì)算機(jī)數(shù)據(jù)處理與信息管理系統(tǒng)的核心。數(shù)據(jù)庫技術(shù)研究和結(jié)局了計(jì)算機(jī)信息處理過程中大量數(shù)據(jù)有效地組織和存儲的問題,在數(shù)據(jù)庫系統(tǒng)中減少數(shù)據(jù)存儲冗余,實(shí)現(xiàn)數(shù)據(jù)共享、保障數(shù)據(jù)安全以及高效得檢索和處理數(shù)據(jù)。MySql:是一種數(shù)據(jù)庫查詢和程序設(shè)計(jì)語言,可以用于存儲數(shù)據(jù),查詢、更新管理關(guān)系數(shù)據(jù)庫系統(tǒng)。嵌入到Java代碼中實(shí)現(xiàn)對數(shù)據(jù)庫的操作。

2需求分析2.1功能需求功能需求分析是整個(gè)軟件工程中的一個(gè)最關(guān)鍵的過程。主要任務(wù)是根據(jù)用戶需求和運(yùn)行條件,確定系統(tǒng)將實(shí)現(xiàn)的功能。經(jīng)過需求分析,本三國游戲系統(tǒng)具體需求如下:(1)用戶注冊、登錄;(2)選擇勢力查看信息;(3)選擇城市操作具體內(nèi)容;(4)執(zhí)行城市操作。2.2性能需求(1)系統(tǒng)安全性:業(yè)務(wù)邏輯不對外暴露,保證系統(tǒng)安全。(2)系統(tǒng)穩(wěn)定性:保證系統(tǒng)運(yùn)行穩(wěn)定,對可能出現(xiàn)的異常加以處理。(3)界面友好性:提供簡易實(shí)用的用戶界面。(4)數(shù)據(jù)安全性:用戶身份驗(yàn)證,管理員后臺管理數(shù)據(jù)庫,保證數(shù)據(jù)安全。2.3開發(fā)環(huán)境(1)操作系統(tǒng):MicrosoftWindows7(2)服務(wù)器:Apache-Tomcat-6.0.32(3)數(shù)據(jù)庫:MySQL(4)數(shù)據(jù)庫設(shè)計(jì):NavicatforMySQL(5)開發(fā)軟件:MyEclipse8.5jdk1.6(6)瀏覽器:InternetExplorer2.4運(yùn)行環(huán)境本系統(tǒng)能夠在主流操作系統(tǒng):Windows下運(yùn)行,并能夠通過因特網(wǎng)或企業(yè)廣域網(wǎng)對本系統(tǒng)進(jìn)行管理。3系統(tǒng)總體設(shè)計(jì)3.1基本設(shè)計(jì)原則(1)系統(tǒng)必須具備可靠性。(2)系統(tǒng)必須具備健壯性。系統(tǒng)必須能夠判斷輸入信息是否符合規(guī)范要求。(3)系統(tǒng)必須具備可測試性。系統(tǒng)必須能經(jīng)過輸入數(shù)據(jù)的測試,保證系統(tǒng)得到全面的檢驗(yàn)。(4)系統(tǒng)必須具備可擴(kuò)展性。 在系統(tǒng)需要變更業(yè)務(wù)規(guī)則或更新功能時(shí)候,應(yīng)該通過升級接口來實(shí)現(xiàn)而不是修改代碼。這就要求系統(tǒng)必須具備可擴(kuò)展性。3.2業(yè)務(wù)流程設(shè)計(jì)(1)用戶身份驗(yàn)證:注冊會員,已注冊的用戶可以登錄和注銷;(2)選擇勢力信息查看:已登錄用戶可以看到除自己以外所有公用信息(3)購物車操作:游客和會員都可以將書籍信息加到購物車,可以刪除購物車中的書籍信息,購物車中的書籍信息在生成訂單或離開網(wǎng)站時(shí)清除;(4)生成訂單:生成訂單時(shí)檢查是否登錄,若未登錄則不能生成訂單;(5)登錄用戶操作:登錄用戶可以查看訂單、訂單明細(xì),修改個(gè)人信息,注銷;業(yè)務(wù)流程如圖:用戶用戶登錄注冊查看其它城市信息查看本城信息操作本城信息注銷軍事內(nèi)政人才征兵訓(xùn)練出征移動獎(jiǎng)賞搜索農(nóng)業(yè)商業(yè)修筑圖3-1業(yè)務(wù)流程圖3.3數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫在整個(gè)系統(tǒng)中處于非常重要的位置,所有的功能脫離了數(shù)據(jù)庫都無法實(shí)現(xiàn),數(shù)據(jù)庫的好壞直接決定著系統(tǒng)的數(shù)據(jù)安全和運(yùn)行效率。根據(jù)功能需求,支持系統(tǒng)運(yùn)行的數(shù)據(jù)庫需要滿足如下特點(diǎn):(1)由于需要用戶注冊和登錄,所以需要一個(gè)用戶表用來存儲會員信息;(2)三國英雄行的主要的角色是英雄,所以需要一個(gè)英雄表來英雄信息;(3)英雄一定屬于某個(gè)城市,所以需要一個(gè)城市表來存儲城市信息;(4)城市屬于某個(gè)勢力,所以需要一個(gè)勢力表;3.3.1概念數(shù)據(jù)模型設(shè)計(jì)經(jīng)過分析得出E-R圖(實(shí)體-關(guān)系圖)如下:用戶用戶用戶編號用戶名密碼E-mail忠誠度金錢兵力士氣武力值n英雄英雄編號英雄名智力值勢力1勢力編號勢力名屬于城市屬于1城市編號糧食防御城市名n圖3-2概念數(shù)據(jù)模型設(shè)計(jì)E=R圖3.3.2邏輯數(shù)據(jù)模型設(shè)計(jì)將E-R圖轉(zhuǎn)化為關(guān)系數(shù)據(jù)模式:用戶(用戶id,用戶名,密碼,email);勢力(勢力id,勢力名);城市(城市id,城市名,金錢,糧食,防御,兵力,士氣);英雄(英雄id,英雄名,武力,智力,忠誠度);3.3.3物理數(shù)據(jù)模型設(shè)計(jì)在NavicatForMySQL軟件中設(shè)計(jì)物理數(shù)據(jù)模型:圖3-3物理數(shù)據(jù)模型設(shè)計(jì)3.4系統(tǒng)結(jié)構(gòu)設(shè)計(jì)3.4.1頁面結(jié)構(gòu)設(shè)計(jì)(1)左部顯示游戲地圖(2)中部顯示武將操作,列出可供選擇武將列表;(3)地圖下部顯示各類操作,可以軍事,內(nèi)政,人才等(4)右部顯示用戶信息如名稱,所屬國家等,及注銷操作。3.4.2代碼結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)采用四層B/S結(jié)構(gòu),包括表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層和數(shù)據(jù)層。表示層主要由JSP,Struts2。主要負(fù)責(zé)MVC模型中的視圖和控制部分。業(yè)務(wù)邏輯層指的是Service層,主要處理系統(tǒng)的業(yè)務(wù)邏輯,并使表示層與數(shù)據(jù)訪問層分離。數(shù)據(jù)訪問層指的是DAO層,該層主要完成對象-關(guān)系映射的建立,通過這個(gè)映射和訪問業(yè)務(wù)對象即可實(shí)現(xiàn)對數(shù)據(jù)庫的訪問,提高了開發(fā)效率。數(shù)據(jù)層指數(shù)據(jù)庫。代碼結(jié)構(gòu)示意圖如下:ActionActionServiceDAO數(shù)據(jù)庫瀏覽器JSPSpring(Bean)圖3-4代碼結(jié)構(gòu)示意圖代碼執(zhí)行流程說明:瀏覽器接受到用戶請求后調(diào)用相應(yīng)JSP接收請求,隨后轉(zhuǎn)到相應(yīng)的Action處理,Action經(jīng)過判斷后創(chuàng)建Action實(shí)例,把數(shù)據(jù)和請求傳遞給Service層,調(diào)用相應(yīng)的Service方法處理,Service根據(jù)業(yè)務(wù)要求創(chuàng)建相應(yīng)的Dao實(shí)例,調(diào)用Dao中的相應(yīng)方法訪問數(shù)據(jù)庫。把操作數(shù)據(jù)庫產(chǎn)生的結(jié)果返回給Service,再由Action返回給Action,最后由Action跳轉(zhuǎn)到相應(yīng)的JSP將處理結(jié)果顯示在瀏覽器上反饋給用戶。Action與業(yè)務(wù)層和DAO層之間的實(shí)體類型的數(shù)據(jù)依賴Springbean的注入。如此將代碼分層,各層的分工明確,降低了各個(gè)模塊間的耦合性,使系統(tǒng)便于維護(hù)和升級。

4系統(tǒng)詳細(xì)設(shè)計(jì)4.1數(shù)據(jù)庫實(shí)現(xiàn)進(jìn)入cmd,輸入mysql–uroot–p敲回車后輸入密碼,進(jìn)入到MySQLmonitor下,如圖:圖4-1建立數(shù)據(jù)庫在光標(biāo)處輸入代碼建立數(shù)據(jù)庫。具體代碼參見附錄。4.2系統(tǒng)所需jar包(1)antlr-2.7.6.jar語言轉(zhuǎn)換工,Hibernate利用它實(shí)現(xiàn)HQL到SQL的轉(zhuǎn)換(2)c3p0-.jarc3p0是一個(gè)開源的JDBC連接池,實(shí)現(xiàn)了數(shù)據(jù)源和JNDI的綁定。c3p0.jar是他的驅(qū)動包。(3)hibernate3.jarHibernate的核心庫,進(jìn)行數(shù)據(jù)庫連接必須用的包(4)commons-beanutils-1.8.3.jarbeanutils主要提供了對于JavaBean的各種操作。(5)commons-logging-1.1.1.jar 日志工具。(6)commons-collections.jar:ApacheCommons包中的一個(gè),包含了一些Apache開發(fā)的集合類,功能比java.util.*強(qiáng)大。(7)commons-lang.jar:ApacheCommons包中的一個(gè),包含了一些數(shù)據(jù)類型工具類 (8)mysql-connector-java-5.0.8-bin.jar 數(shù)據(jù)庫驅(qū)動。 (9)commons-fileupload-1.2.2.jar 實(shí)現(xiàn)文件上傳必須引入的包。 (10)commons-io-2.0.1.jar 處理IO的包。(11)spring.jar包含有完整發(fā)布模塊的單個(gè)jar包。(12)struts2-core-2.1.6.jar

struts2的核心包 全部所需jar包如圖:圖4-2所需的jar包 還需將這些包導(dǎo)入到WEBINF目錄下的lib文件夾中。4.3源代碼設(shè)計(jì)4.3.1面向接口編程接口是一系列方法的聲明,是一些方法特征的集合,一個(gè)接口只有方法的特征,沒有方法的實(shí)現(xiàn)。定義接口就是將定義與實(shí)現(xiàn)相分離。一般情況下實(shí)現(xiàn)一個(gè)系統(tǒng)的時(shí)候,通常是將定義與實(shí)現(xiàn)合為一體,不加分離的,系統(tǒng)設(shè)計(jì)規(guī)范應(yīng)該是定義與實(shí)現(xiàn)分離。因此,在本系統(tǒng)中,選擇使用面向接口編程方法。面向接口編程的優(yōu)點(diǎn):(1)在最初設(shè)計(jì)的時(shí)候可以將更多的精力集中在業(yè)務(wù)研究上,而不是具體實(shí)現(xiàn)上。(2)接口設(shè)計(jì)完成后,實(shí)現(xiàn)工作將會非常簡單。(3)可以同時(shí)設(shè)計(jì)接口和具體實(shí)現(xiàn),也可以先實(shí)現(xiàn)后抽取接口,增大了開發(fā)的靈活性。在本系統(tǒng)中,在Service層和Dao層采用面向接口編程,因此Service層和Dao層都別有兩個(gè)包,一個(gè)存放接口,一個(gè)存放實(shí)現(xiàn)。4.3.2軟件包和JAVA源代碼文件(1)POJO:POJO的源文件主要定義實(shí)體類。實(shí)體類,如勢力類,城市類,英雄類,用戶類等等,具體如圖4-3:圖4-3POJO層源文件在類中聲明實(shí)體屬性并實(shí)現(xiàn)相應(yīng)的Set、Get方法。例如英雄類,代碼如下。packagecn.xmg.sanguo.po;publicclassHero{ privateIntegerid; //主鍵 privateStringname; //武將名 privateIntegerforce; //武力 privateIntegerzhili; //智力 privateIntegerhonest;//忠誠度 privateCitycity; publicIntegergetId(){ returnid; } publicvoidsetId(Integerid){ this.id=id; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ /r/=name; } publicIntegergetForce(){ returnforce; } publicvoidsetForce(Integerforce){ this.force=force; } publicIntegergetZhili(){ returnzhili; } publicvoidsetZhili(Integerzhili){ this.zhili=zhili; } publicCitygetCity(){ returncity; } publicvoidsetCity(Citycity){ this.city=city; } publicIntegergetHonest(){ returnhonest; } publicvoidsetHonest(Integerhonest){ this.honest=honest; }} (2)Action層:Action層主要定義交互類,詳情如圖: 圖4-6Action包及源文件Action層通過調(diào)用過濾器的方法獲取值,先判斷并選擇執(zhí)行與之對應(yīng)的函數(shù),再調(diào)用方法獲取其他數(shù)據(jù),隨后將數(shù)據(jù)封裝到Bean中并交給相應(yīng)的Service處理。最后將處理結(jié)果返回給JSP顯示在瀏覽器中。例如在UserAction.java中為regist后調(diào)用注冊函數(shù)實(shí)現(xiàn)注冊功能,代碼如下。@Action(value="/regist", //使用results屬性為該方法指定Result映射 results={ @Result(name="success",type="dispatcher",location="/success.jsp"), @Result(name="failure",type="dispatcher",location="/regist.jsp"), @Result(name="input",type="dispatcher",location="/regist.jsp")}) publicStringregist()throwsException{ Mapsession=ActionContext.getContext().getSession(); Stringver2=(String)session.get("rand"); session.put("rand",null); if(vercode.equalsIgnoreCase(ver2)){ if(mgr.addUser(model)>0){ addActionMessage("注冊成功,請登錄系統(tǒng)!"); returnSUCCESS; }else{ addActionError("注冊失敗,請重試!"); return"failure"; } }else{ addActionError("驗(yàn)證碼不匹配,請重新輸入"); return"failure"; } }(3)Service層:業(yè)務(wù)邏輯層定義了接口和實(shí)現(xiàn)。在系統(tǒng)中,業(yè)務(wù)邏輯是最容易變動的部分,應(yīng)該用Service調(diào)用Dao,這樣一來當(dāng)業(yè)務(wù)邏輯變動時(shí)只需修改Service代碼即可。業(yè)務(wù)層用工廠設(shè)計(jì)模式實(shí)例化Dao對象,在處理完相應(yīng)的業(yè)務(wù)后,調(diào)用Dao實(shí)例的方法對數(shù)據(jù)庫進(jìn)行操作。例如在更改城市糧食值的時(shí)候要判斷這個(gè)城市有沒有英雄智力信息,如果包含英雄那么才能更改城市糧食值。所以在業(yè)務(wù)層的更新城市糧食值方法下加上對是否存在英雄信息的判定,該方法代碼如下:圖4-8業(yè)務(wù)處理實(shí)例(4)Dao層:數(shù)據(jù)訪問層同樣采用面向接口編程,根據(jù)業(yè)務(wù)需求,DAO實(shí)現(xiàn)相應(yīng)的對數(shù)據(jù)庫的操作。要對數(shù)據(jù)庫操作必須使用SQL語句,DAO層的代碼就是把SQL語句嵌入到Java代碼中。依賴Hibernate實(shí)現(xiàn)該功能。HibernateDaoSupport類中的get方法,根據(jù)參數(shù)不同實(shí)現(xiàn)不同的查詢功能;update方法實(shí)現(xiàn)數(shù)據(jù)庫的插入、更新等功能。例如注冊用戶時(shí)需要調(diào)用的DAO,在用戶表中添加用戶信息,在用戶輸入用戶名時(shí),系統(tǒng)將調(diào)用DAO層,實(shí)例化一個(gè)List來存儲數(shù)據(jù)庫中所有用戶名信息,通過hibernate的hql語句查詢得到,返回給Service層得到User對象。用hql語句可以大量簡化JDBC代碼,從而使我們的開發(fā)過程變得更加高效。4.4頁面設(shè)計(jì) JSP文件全部放在工程根目錄下的WebRoot文件中,圖片放置在WebRoot中的images文件夾下。css文件放在css文件夾下,js文件放在js文件夾下如圖:圖4-9JSP文件放置5頁面展示和異常處理5.1頁面展示(1)注冊信息填寫:填寫注冊信息以便完成注冊。圖5-2注冊頁面登錄頁面:登錄到游戲頁面圖5-3登錄頁面游戲頁面:只有用戶才可以進(jìn)入游戲頁面。登陸后顯示用戶名和國家勢力圖5-4游戲開始頁面(5)開始游戲頁:用戶將鼠標(biāo)拖到城池上后的效果。顯示主城名,金錢,防御和食物圖5-5城池效果-建業(yè)圖5-6城池效果-許都 圖5-7城池效果-成都 操作城市:鼠標(biāo)點(diǎn)擊城市后顯示軍事,內(nèi)政,人才功能圖5-7操作具體操作軍事中的訓(xùn)練為例 圖5-8軍事訓(xùn)練操作點(diǎn)擊訓(xùn)練后,得到結(jié)果如下圖:圖5-9軍事訓(xùn)練結(jié)果5.2信息驗(yàn)證及異常處理 在系統(tǒng)測試過程中發(fā)現(xiàn)可能出現(xiàn)的問題,并對這些問題進(jìn)行處理。從而保證系統(tǒng)運(yùn)行穩(wěn)定和數(shù)據(jù)安全。(1)注冊時(shí)應(yīng)驗(yàn)證注冊信息,不能出現(xiàn)空值或者空格,否則不能注冊,如下圖:5-10注冊信息驗(yàn)證(2)登錄時(shí)輸入的用戶名和密碼也不能為空或包含空格,如下圖:5-11登錄信息驗(yàn)證

總結(jié) 本設(shè)計(jì)選題為三國英雄行游戲的實(shí)現(xiàn)。三國英雄行作為一個(gè)B/S的網(wǎng)頁游戲系統(tǒng),具有當(dāng)前市場上大部分游戲的普遍特性。 本系統(tǒng)是一個(gè)在MyEclipse8.5,tomcat,mysql,jdk1.6環(huán)境下使用JAVA語言開發(fā)的企業(yè)級的三國游戲系統(tǒng)。這是本人在大學(xué)期間設(shè)計(jì)的第一個(gè)比較完整的系統(tǒng),包含了從頁面,到業(yè)務(wù)層和數(shù)據(jù)庫的設(shè)計(jì)和實(shí)現(xiàn)。本設(shè)計(jì)重點(diǎn)主要偏重于代碼部分的設(shè)計(jì)和編寫,采用了四層B/S結(jié)構(gòu),由于以前從未按照這種結(jié)構(gòu)編寫代碼,本次開發(fā)深刻地體會到了把表示層,業(yè)務(wù)層,數(shù)據(jù)庫訪問層和數(shù)據(jù)庫分開帶來的好處。并用到了面向接口編程,既簡化了代碼,又增強(qiáng)了代碼的復(fù)用性和程序的可擴(kuò)充性。在開發(fā)階段的后期,實(shí)現(xiàn)了最初設(shè)計(jì)的基本功能的基礎(chǔ)上,又對系統(tǒng)可能出現(xiàn)的問題和錯(cuò)誤進(jìn)行了排查和解決,保證了系統(tǒng)運(yùn)行的穩(wěn)定性。 本系統(tǒng)的不足之處在于頁面設(shè)計(jì)上,由于自己的美工水平一般,所以顯得自己的界面效果顯得不太完善美觀,戰(zhàn)爭的效果無法很炫的展示出來,這是一個(gè)不足,由于本次開發(fā)所需技術(shù)多為自學(xué),,用到Spring,Structs,Hibernate這三大框架。也由于是第一次應(yīng)用三大框架相結(jié)合,所以在有些地方顯得不太符合三大框架邏輯,對于一個(gè)開發(fā)javaee的項(xiàng)目的程序員來說,三大框架是必須要熟練運(yùn)用的,所以在今后的日子里,應(yīng)該加強(qiáng)對三大框架的學(xué)習(xí),為以后的開發(fā)提早做準(zhǔn)備。 畢業(yè)設(shè)計(jì)是大學(xué)學(xué)習(xí)的一個(gè)總結(jié),是一個(gè)學(xué)生真實(shí)知識水平的試金石。在做畢業(yè)設(shè)計(jì)的幾個(gè)月間,我力求完美的完成它,,雖然仍有些許遺憾和不足之處,但我依然從中學(xué)到了許多。希望這次設(shè)計(jì)能為我的本科學(xué)習(xí)和生活畫上完美的句號。參考文獻(xiàn)[1](美)特班等著嚴(yán)建援等譯JavaWeb開發(fā)實(shí)戰(zhàn)經(jīng)典清華大學(xué)出版社2011年11月[2](美)BruceEckel著陳昊鵬譯Java編程思想機(jī)械工業(yè)出版社2007年6月[3](美)昂納日托JSP速成教程機(jī)械工業(yè)出版社2002年[4]唐四新編著基于Web標(biāo)準(zhǔn)的網(wǎng)頁設(shè)計(jì)與制作清華大學(xué)出版社2009年12月[5]JeffreyD.UllmanJenniferWidom著岳麗華金培權(quán)萬壽紅等譯AFirstCouresinDATEBASESYSTEMS機(jī)械工業(yè)出版社2009年05月[6]李剛編著Struts2.1權(quán)威指南電子工業(yè)出版社2009年5月[7]張孝祥,徐明華叢書主編,邱加永等編著JSP基礎(chǔ)與案例開發(fā)詳解(軟件開發(fā)課堂)清華大學(xué)出版社2009年08月01日[8]JocyGeogre,DineshBatra,JosephValacich,JeffreyHoffer著龔曉慶等譯面向?qū)ο蠓治雠c設(shè)計(jì)清華大學(xué)出版社2008年1月[9]唐振明編JavaEE架構(gòu)與程序設(shè)計(jì)電子工業(yè)出版社2011年10月[10]湯鳴紅編JavaWeb應(yīng)用開發(fā)化學(xué)工業(yè)出版社2009年7月致謝本設(shè)計(jì)的完成是在王老師的細(xì)心指導(dǎo)下進(jìn)行的。在每次設(shè)計(jì)遇到問題時(shí),都是老師不辭辛苦的講解才使得我的設(shè)計(jì)順利的進(jìn)行。從設(shè)計(jì)的選題,程序的編寫、修改、完善,再到最后寫論文的整個(gè)過程中,花費(fèi)了王老師很多的寶貴時(shí)間和精力,在此向王克儉老師表示衷心地感謝!老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,開拓進(jìn)取的精神和高度的責(zé)任心都將使本人受益終生!還要感謝信息學(xué)院的其他老師們,從常淑慧老師的C語言,再到王老師的數(shù)據(jù)結(jié)構(gòu),孫老師的數(shù)據(jù)庫,李老師的面向?qū)ο蠓治雠c設(shè)計(jì)等,是他們引領(lǐng)我跨過計(jì)算機(jī)科學(xué)與技術(shù)領(lǐng)域的門檻,并為以后的學(xué)習(xí)打下理論基礎(chǔ)。也要感謝我的同學(xué),在設(shè)計(jì)中遇到問題的時(shí)候,他們幫助我填補(bǔ)了知識的空缺和漏洞,還幫助我解決了一些技術(shù)難題。最后要感謝我的母校,在這里學(xué)習(xí)和生活的四年里,我既學(xué)到了寶貴的知識,又豐富了自己的閱歷,還結(jié)識了許多良師益友。在大學(xué)的這四年,不僅是我學(xué)生生涯的一部分,更是我的一段美麗人生。 附錄createdatabasesgxCREATETABLE`city`(`id`int(11)NOTNULLauto_increment,`city_name`varchar(50)defaultNULL,`city_money`int(11)defaultNULL,`city_food`int(11)defaultNULL,`city_defend`int(11)defaultNULL,`city_bingli`int(11)defaultNULL,`city_shiqi`int(11)defaultNULL,`shili_id`int(11)defaultNULL,PRIMARYKEY(`id`),UNIQUEKEY`city_name`(`city_name`),KEY`FK2E996BDFB08559`(`shili_id`),CON

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論