基于Java web的多功能游戲大廳系統(tǒng)的開發(fā)與實現(xiàn)計算機專業(yè)_第1頁
基于Java web的多功能游戲大廳系統(tǒng)的開發(fā)與實現(xiàn)計算機專業(yè)_第2頁
基于Java web的多功能游戲大廳系統(tǒng)的開發(fā)與實現(xiàn)計算機專業(yè)_第3頁
基于Java web的多功能游戲大廳系統(tǒng)的開發(fā)與實現(xiàn)計算機專業(yè)_第4頁
基于Java web的多功能游戲大廳系統(tǒng)的開發(fā)與實現(xiàn)計算機專業(yè)_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、摘 要目前,國內游戲市場上的網絡游戲有許多種類,游戲在玩法上也越來越雷同,形式越來越單調。這種游戲性系統(tǒng)給玩家?guī)淼某删透须m然是無窮的,但是也有隨之而來的疲憊感,尤其是需要花費大量的時間和精力,這對于大多數(shù)人來說都是很難做到的。本設計采用Java面向對象編程語言,論述了基于Java Web開發(fā)的多功能游戲大廳的開發(fā)與實現(xiàn),研究了目前主流的輕量級J2EE應用體系結構,對所選框架進行了分析和論述。系統(tǒng)集成了Spring MVC、Spring、Mybatis的Java Web開發(fā)框架,使用IntelliJ IDEA集成開發(fā)工具和SQL Server數(shù)據(jù)庫管理系系統(tǒng)(DBMS)。系統(tǒng)界面簡單清晰,內容

2、包含用戶管理、游戲管理、游戲熱度排名、公告展示等模塊。Web游戲大廳與其他游戲大廳不同,首先,它不需要下載客戶端,打開網頁就能游戲;其次,Web游戲有一定的益智性,比如策略類、經營類等等。在畫面上雖無法與大型網絡游戲的界面與規(guī)模相比,但是開發(fā)者在制作過程中將更多的精力放在了如何提高游戲的趣味性和樂趣上。于是Web游戲大廳應運而生,并且以其界面簡潔、功能齊全、易用性高、對硬件要求低等特點備受青睞。關鍵詞:游戲大廳; 軟件開發(fā)框架; 數(shù)據(jù)庫管理系統(tǒng)ABSTRACTAt present, there are many kinds of online games in the domestic gam

3、e market, and the game is more and more similar in terms of gameplay, and the form is more and more monotonous. This kind of gameplay system gives players a sense of accomplishment, but there is also a sense of exhaustion, especially the need to spend a lot of time and energy, which is very difficul

4、t for most people.This design adopts Java object-oriented programming language, discusses the development and implementation of multi-function game hall based on Java Web development, studies the current mainstream lightweight J2EE application architecture, and analyzes and discusses the selected fr

5、amework. The system integrates the Java Web development framework of Spring MVC, Spring, and Mybatis, using IntelliJ IDEA integrated development tools and SQL Server database management system (DBMS). The system interface is simple and clear, and the content includes modules such as user management,

6、 game management, game popularity ranking, and announcement display.The web game hall is different from other game halls. First, it does not need to download the client, and the webpage can be played. Secondly, the Web game has certain ingenuity, such as strategy, business, and so on. Although it is

7、 not comparable to the interface and scale of large online games on the screen, developers are focusing more on how to improve the fun and fun of the game during the production process. So the Web game hall came into being, and it was favored for its simple interface, complete functions, high ease o

8、f use, and low hardware requirements.Keywords:Game Hall; Software Development Framework; DMBSIV目 錄第一章 引言1第一節(jié) 課題背景1第二節(jié) 研究現(xiàn)狀1第二章 開發(fā)環(huán)境與相關技術3第一節(jié) 開發(fā)環(huán)境3第二節(jié) 相關技術5第三節(jié) 項目管理工具5第三章 系統(tǒng)分析與設計8第一節(jié) 任務概述8第二節(jié) 可行性分析9第三節(jié) 功能描述10第四節(jié) 數(shù)據(jù)庫設計12第四章 系統(tǒng)實現(xiàn)16第一節(jié)架構分析16第二節(jié)登錄注冊界面設計19第三節(jié)游戲大廳界面設計22第四節(jié)游戲管理模塊26第五節(jié)公告管理模塊29第五章 系統(tǒng)測試34第一節(jié) 測

9、試的基本概念34第二節(jié) 系統(tǒng)測試計劃34第三節(jié) 系統(tǒng)測試結果分析36第六章 結 論38參考文獻39致 謝4057第一章 引言本文首先敘述了本次課題的背景、開發(fā)目的和意義,其次介紹了系統(tǒng)開發(fā)環(huán)境、開發(fā)工具、相關開發(fā)語言、系統(tǒng)框架,并對相關技術進行闡述,重點論述了需求分析、詳細設計、編碼實現(xiàn)和系統(tǒng)測試等過程1。Java Web開發(fā)不僅需要豐富的實戰(zhàn)經驗,也需要熟練掌握不同框架的優(yōu)缺點、應用場景,從而開發(fā)出符合用戶需求、吸引用戶的產品2。第一節(jié) 課題背景隨著經濟的發(fā)展,個人電腦和網絡不斷普及,人們物質生活得到提高,因此對精神生活質量提出了新的要求。隨著網絡的發(fā)展,游戲大廳逐漸成為游戲界的一種主流形式

10、。目前,游戲已經成為了一種大家喜聞樂見的主流休閑方式。小游戲正是由于其迭代速度快和簡單易玩的屬性,以驚人的速度發(fā)展著,游戲網站也因此蘊含了巨大的市場潛力。Web游戲憑借互動性和易用性,深受各年齡段人群的喜愛。所以設計一款休閑娛樂、簡易方便的益智游戲網站前景非常可觀。本系統(tǒng)就是基于Java Web開發(fā)的一套簡潔的游戲大廳,意在打造一個集合多種益智、休閑游戲的平臺,給用戶一種不一樣的娛樂體驗。在有著龐大數(shù)量的小游戲網站中,如何在眾多游戲里挑選一款方便易玩,設計巧妙,并擁有較高品質的游戲現(xiàn)如今成為了大家在生活中所關注的問題。為了適應人們日益增長的娛樂需求,網站開發(fā)者們做了許多嘗試。例如,為了方便玩家

11、準確便捷的挑選游戲,許多網站對當前熱門的小游戲進行歸納與分類。本系統(tǒng)在此基礎上進一步優(yōu)化,用戶通過登錄注冊,可于平臺上選擇小游戲試玩,并對心儀的游戲進行收藏評分。用戶對游戲的評價將實時反饋于界面上。開發(fā)者可通過反饋內容進行總結整理,登錄管理員界面發(fā)布相關公告,改進系統(tǒng)。第二節(jié) 研究現(xiàn)狀隨著小游戲數(shù)量急速增長,游戲種類也日益繁多,簡單的歸納類網站已經無法滿足用戶的需求,于是根據(jù)用戶喜好進行排名,能進行個性化收藏的游戲大廳也應運而生。但他們存在著一個共同的問題,功能繁多、操作復雜。因此,用戶急需一個功能簡潔完整的游戲平臺,而多功能游戲大廳恰恰滿足了這種需求。多功能游戲大廳的任務主要是為用戶提供一個

12、功能完整,使用體驗良好的游戲平臺。一方面幫助用戶選擇并收藏自己喜愛的小游戲,另一方面可以根據(jù)用戶的反饋與參與度改善游戲大廳的功能與體驗,為開發(fā)者反饋真實有用的信息,幫助完善系統(tǒng)。電子游戲自從60年代出現(xiàn)起,發(fā)展迅速。目前已有多種多功能游戲大廳,在很大程度上已經遍布世界各地并為全世界受眾喜愛,具有一定知名度的多功能游戲平臺如Steam游戲平臺,Origin游戲平臺,國內騰訊研發(fā)的We Game游戲平臺,以及已經延續(xù)多年的QQ游戲大廳,這些游戲平臺主要提供一個集成式的游戲大廳,供玩家方便快捷的選擇自己想玩的游戲。對于目前市面上所做的多功能游戲大廳,很多只是將不同種類的游戲堆砌在一個籠統(tǒng)的畫面與服務

13、器上,缺乏對游戲的分類與管理,由此可以得出,游戲大廳在未來的發(fā)展趨勢主要有兩點,一是提升系統(tǒng)在用戶心中的可信度;二是建立好用戶與開發(fā)者的溝通橋梁。首先需要做好主界面,使玩家進去大廳能直觀的了解最新最熱門的游戲,做好游戲宣傳以及程序升級,如每周榜單一類的排行榜可以方便玩家了解實時信息。通過數(shù)據(jù)統(tǒng)計,針對玩家進行游戲推薦,最好按興趣對用戶進行劃分。做好玩家賬戶的保護,管理員在后臺進行每日維護,并定時更新游戲與最新信息,充分利用網絡資源,篩選適合不同年齡層的游戲。第二章 開發(fā)環(huán)境與相關技術第一節(jié) 開發(fā)環(huán)境軟件開發(fā)工具的應用可加快軟件開發(fā)周期,降低軟件開發(fā)者的勞動強度,提升軟件工程系統(tǒng)化程度。在本設計

14、中應用了功能強大的IntelliJ IDEA集成開發(fā)環(huán)境。一、IntelliJ IDEA集成開發(fā)環(huán)境當前軟件開發(fā)業(yè)界使用最廣泛,用戶友好度最高的Java開發(fā)工具是由Jet Brains開發(fā)出的IntellingjIDEA(簡稱為IDEA)。該工具功能多樣性遠遠優(yōu)于其他工具性軟件,其智能代碼助手可以在代碼編寫過程中自動提示或重構代碼,結合代碼審查功能大大減少了開發(fā)者的工作量;IDEA中內置了Ant這一靈活的構建工具,且支持J2EE架構;在圖形頁面上更是做到了超前的創(chuàng)新。在IDEA中,Project和Module在項目結構中的意義完全不同,這是IDEA與Eclipse的主要差異。由于IDEA中的P

15、roject只起到定義相關項目并限制其范圍的作用,并無任何開發(fā)功能,所以構成某項目的Module,即使互相之間存在依存關聯(lián)關系,但是并不需要一定處于同一項目業(yè)務之下。IDEA對語言的支持有Java、scala等,通過安裝插件可以支持更多語言,對數(shù)據(jù)庫的支持有My SQL、oracle、SQL Server,對框架的支持有Spring MVC、Web Service、Structs、Hibernate等,對前端框架支持有Html5、CSS3、Node.JS等IDEA采用了用戶友好度高的設計理念,可以將開發(fā)者的靜態(tài)代碼分析能力做到極大的開發(fā),提高總體系統(tǒng)開發(fā)速率。IDEA可以自動為用戶代碼編寫出架

16、構科學的索引,并根據(jù)代碼上下文自動生成有效建議,為動態(tài)代碼解析提供了有效支持。IDEA提供了compile、build和make三種方式的編譯,如下:CompileIDEA不像Eclipse一下在寫完代碼后需要進行手動保存,并且保存時會進行編譯(可能是項目很緩慢和停頓,用過的都應該有映像),但是不編譯也不會影響代碼的檢查(同樣會進行報錯)。ReBuild、Rebuild Module這是對整個工程、工程下的模塊進行編譯,執(zhí)行時間可能較長。Make 只對修改過的文件進行編譯。二、編程語言Java是一種可以撰寫跨平臺應用軟件的面向對象的程序設計語言,在結構上與C+有很大的相似之處,不過相較于C+要

17、更為簡單。Java擁有更為強大的功能,囊括了其他程序語言的大部分優(yōu)點,相較于C+語言,其更為簡單清晰,不但無需使用指針,其可以被視為是中立的,這是由于在對Java進行應用的過程中,首先使用的是聚合成中間代碼,即字節(jié)碼;然后,在進行加載的過程中,會實施奇偶校驗,并將其中的代碼釋放出來,而后就能夠在Java平臺上進行運行,而且這種運行并不會對所應用的系統(tǒng)做出特殊的要求。在Java程序運行的過程中,在平臺中存在Java解釋器,而對字節(jié)碼的執(zhí)行就是通過解釋器實現(xiàn)的,其中也包括類的性能,使之能夠在特定的運行環(huán)境中形成有效的結合。Java語言本身具有多線程的特點,也就是在對某一應用程序進行運行時,其中同時

18、存在多個數(shù)據(jù)流,共同完成對程序的執(zhí)行,而多線程程序與應用在計算機工藝設計方面也是未來發(fā)展的一個重要方向;Java在虛擬機上解釋運行,從而達到實時編譯的效果,在一定程度上加快了Java的運行速度。這些特點使開發(fā)人員不用再為內存管理而擔憂。Java最突出的特點之一就是支持多線程,使得多個任務可以同時進行3。但是嚴格意義上說,受目前的技術限制,當代的計算機在某一時刻僅能執(zhí)行單一線程,多線程并不能同時執(zhí)行多個任務。產生如此矛盾的原因在于計算機硬件技術的飛速發(fā)展,處理器速度得到極大的提升,遠超人類感官接收信息的速度,使用戶的使用體驗得到滿足。Java程序的基本組成單元是類,它擁有許多標準類庫和大量的第三

19、方類庫,對于Java開發(fā)人員來說可以使用集成開發(fā)環(huán)境(比如Spring Tool Suite、IntelliJ IDEA)來幫助他們進行高效地編程4。Java作為一門根深蒂固的編程語言,有一個大型的社區(qū)、海量的資源為其作為支持。三、數(shù)據(jù)庫(一)數(shù)據(jù)庫意義 數(shù)據(jù)庫(Database)是以某種有組織的方式存儲的數(shù)據(jù)集合,保存有組織的數(shù)據(jù)的容器。數(shù)據(jù)庫管理系統(tǒng)(DBMS: Database Manage System):數(shù)據(jù)庫是通過DBMS創(chuàng)建和操作的容器。(二)SQL Server簡介SQL Server是使用度最高的關系型數(shù)據(jù)庫管理系統(tǒng)之一5。其特點主要是體積小、速度快、成本低,且源碼開放,所以

20、在選擇WEB應用方面的數(shù)據(jù)庫時,很多中小型網站都會使用SQL Server。SQL Server可以允許于多個系統(tǒng)(Unix,Linux,Windows)上,并支持多種語言,包括C、C+、python、Java、PHP等。SQL Server使用最常用的數(shù)據(jù)庫管理語言SQL進行數(shù)據(jù)庫管理。第二節(jié) 相關技術一、B/S架構簡介B/S架構是指:瀏覽器/服務器結構(Browser/Server)。它是隨著Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種架構下,用戶界面通過Web瀏覽器來實現(xiàn),事務邏輯的極少部分在前端(Browser)實現(xiàn),在服務器端(Server)實現(xiàn)主要的事務

21、邏輯,形成所謂的三層結構。對于C/S結構的客戶端來說,使用者需要事先在電腦上安裝相應的客戶端軟件,而B/S結構屬于一種“瘦”客戶端,它將主要業(yè)務邏輯存放在了服務器端,因此使用者不再需要在自己的PC端安裝任何客戶端軟件,通過瀏覽器即可訪問軟件服務。B/S結構的軟件系統(tǒng)升級或維護時只需要在服務器端更新即可,這樣一來便大大的簡化了對客戶端電腦的負荷、減輕了系統(tǒng)維護與升級的成本和工作量。B/S體系結構如圖2-1所示。圖 2-1 基于B/S體系結構圖二、SpringMVC + Spring + Mybatis(SSM)框架對于絕大部分 Java Web 開發(fā)者來說,開發(fā)的第一個項目應該都是以JAVA服務

22、器頁面JSP6 或者 JSP+Servlet 形式完成的項目。而這些項目只是學習過程中的練習項目,僅僅能作為是個人練習項目并不能實際應用到企業(yè)中去,學習 Java Web 開發(fā)的目的是研究企業(yè)級應用的開發(fā),因此閉門造車的思維模式不可取。假如一個中小型項目全部使用 JSP+Servlet 進行開發(fā)和維護,其運行、維護成本都會很高,更不用說大型項目了,開發(fā)成本、迭代成本、維護成本將會不可勝計。俗話說工欲善其事必先利其器,一個優(yōu)秀的Java Web框架可以說是程序員的利器,開發(fā)者的學習成本降低了,同時也能減少開發(fā)者的重復編碼工作,簡化開發(fā)過程,加快開發(fā)進度,降低維護難度。在框架整合上,最初是Stru

23、ts+ Spring + Hibernate,后來演變?yōu)镾truts2 + Spring + Hibernate,隨著Spring的強大以及Struts漏洞上的等等問題,演變成為了Spring + SpringMVC + Hibernate/Mybatis。SSM框架在項目開發(fā)中經常使用到,相比于SSH框架,它在近幾年的開發(fā)中運用的更加廣泛,因此本次設計選擇了SSM框架技術7。本次設計采用SpringMVC + Spring + Mybatis(SSM)開發(fā)框架,并且集合了Java服務器頁面JSP、Javascript、html5等知識設計,主要目的是針對目前較流行的框架技術進行學習,體會通過

24、使用框架進行開發(fā)應用程序的有利之處8。掌握MVC模式結構,熟悉Spring框架的工程設計模式,學會開發(fā)基于動態(tài)頁面的B/S結構程序。使用SQL Server數(shù)據(jù)庫保存游戲訪問量、玩家得分及排名信息,利用JDBC將Java代碼連接到SQL Server數(shù)據(jù)庫,實現(xiàn)SQL語句在數(shù)據(jù)庫中的執(zhí)行。SpringMVC屬于SpringFrameWork的后續(xù)產品,屬于表現(xiàn)層框架,已經融合在SpringWebFlow里。SpringMVC分離了控制器、模型對象、處理程序對象等,使其制定更為容易。 是一種非侵入式的 應用框架。就各種 框架而言,可作為一個粘合平臺,實現(xiàn)很多技術的有效整合,并形成一個統(tǒng)一整體,進

25、而解決當前所面對的諸多問題,使系統(tǒng)結構和性能更為出彩。假如 框架所負責的表單相當于提交了顯卡,則MyBatis 框架主要負責對數(shù)據(jù)庫計算機CPU進行操作,那么框架相當于將主板和中央處理器進行組裝。Mybatis是一個用來封裝JDBC的持久層框架,其主要設計目的就是讓我們對執(zhí)行SQL語句時對輸入輸出的數(shù)據(jù)管理更加方便。的操作均圍繞展開。通過完成文件配置將實體關聯(lián)到文件,文件中配置的類對數(shù)據(jù)庫的語句完成映射。在每次同數(shù)據(jù)庫進行交互時,均通過拿到一個,再實現(xiàn)命令的執(zhí)行。Mybatis工作原理如圖2-2所示10。圖 2- 2Mybatis工作原理SpringMVC+Spring+Mybatis搭建的框

26、架原理如圖2-3所示,Spring在運行時具有良好的條理性,不同層均由Spring管理,可實現(xiàn)其他層的調用,Handler調用Service,Service調用Mapper等。依照此調用關系,我們可以從下往上一步步整合。圖 2- 3 SpringMVC + Spring + Mybatis的架構三、項目管理工具項目采用的是Maven管理工具,Maven是Apache下的開源項目,一個跨平臺項目管理構建工具,基于Java平臺完成的項目構建,利用Maven工具可以實現(xiàn)項目生命周期的管理,包含清除、編譯、打包、部署等操作(圖2-4)?;诖丝梢苑奖沆`活的控制項目,重要的是方便開發(fā)人員不必浪費時間去在

27、不同的環(huán)境中配置依賴的jar包,能夠專心于業(yè)務邏輯。圖 2- 4 maven構建的生命周期第三章 系統(tǒng)分析與設計對軟件系統(tǒng)功能需求進行分析對于軟件的功能實現(xiàn)而言具有重要意義,也是整個系統(tǒng)設計中最為關鍵的核心步驟之一11。在本文所設計的系統(tǒng)中,主要針對系統(tǒng)的可行性進行論述,并在相應的功能結構下對系統(tǒng)組織結構以及功能實現(xiàn)過程和原理進行說明。系統(tǒng)需求分析指的是在設計者明確設計前提以及系統(tǒng)所需實現(xiàn)的基本功能前提下對軟件進行有目的的開發(fā)設計,了解系統(tǒng)應當具備哪些功能。遵循科學的需求分析步驟可以使需求分析工作更高效。系統(tǒng)需求包含以下幾點:業(yè)務需求、用戶需求、功能性需求、非功能性的需求12。需求分析的一般步

28、驟如圖3-1所示:圖 3- 1需求分析步驟示意圖第1節(jié) 任務概述1、 課題目標游戲在當前社會中已經成為了幫助人們釋放生活壓力、放松心情的最容易、最行之有效的娛樂方式之一。隨著互聯(lián)網技術的快速發(fā)展,網頁端游戲備受互聯(lián)網玩家青睞,設計一種集合多游戲類型的游戲大廳能夠快速實現(xiàn)用戶對各種主流網頁游戲的需求。在傳統(tǒng)網頁游戲形式的基礎上,首先需求分析確定游戲界面布局,然后采用面向對象編程語言實現(xiàn)用戶登錄、用戶權限管理、信息維護、公告發(fā)布、游戲分類管理等功能。為了能獲得用戶的喜愛,我們在設計的時候必然要考慮到用戶使用時的簡潔度與易玩度,系統(tǒng)要能快捷方便的實現(xiàn)客戶需求,在基礎功能完善的條件下可以嘗試添加其他個

29、性化功能。這要求我們所設計的游戲大廳系統(tǒng)在展示多款游戲的同時,能讓用戶自由的為喜愛的游戲進行評分與收藏,還能通過有趣方便的操作使新玩家更快適應操作本系統(tǒng),獲得更好的游戲體驗。2、 運行環(huán)境表 3- 1軟件開發(fā)環(huán)境配置參數(shù)操作系統(tǒng)Windows 7 旗艦版 64位開發(fā)平臺IntelliJ IDEA數(shù)據(jù)庫服務系統(tǒng)Microsoft SQL Server 2008第2節(jié) 可行性分析要想經濟獲得最高效益,需要通過分析它的可行性來降低開發(fā)過程中的成本。通過對系統(tǒng)分析可行性就能依照各種用戶的需求確定要研究的方向以及目標。最合理的分析步驟是先進性調查,再對滿足要求功能的框架進行分析。要想最合理地利用信息資源

30、,需要從多面對該系統(tǒng)進行調查,包括技術、經濟、操作等各方面的可行性。一、技術可行性本系統(tǒng)采用IntelliJ IDEA作為開發(fā)工具,數(shù)據(jù)庫采用SQL Server 2008,Java 為本系統(tǒng)的開發(fā)語言。在本章之前的內容中已著重介紹了相關開發(fā)工具的優(yōu)點與特點,也分析了所使用的關鍵技術的核心內容。由此可知這些技術可以使多功能游戲大廳被成功開發(fā)與運行。綜上所述,技術可行性滿足要求。二、運行可行性該系統(tǒng)采用的模式為B/S模式。B/S模式作為當今世界網絡程序開發(fā)體系結構的主流,已經成為了當今應用軟件的首選體系結構。B/S以其相對低廉的開發(fā)和維護成本受到了青睞。在電腦保持網絡通暢的情況下,任何瀏覽器與操

31、作系統(tǒng)均可使用,這大大降低了系統(tǒng)開發(fā)的復雜度,可操作性也非常可觀。綜上所述,系統(tǒng)的運行和操作在可行性方面都沒有問題。3、 進度可行性表 3- 2進度計劃表3月18日-4月8日完成開題報告和文獻翻譯,系統(tǒng)需求分析4月9日-4月15日確定研究方案及數(shù)據(jù)庫設計4月16日-5月10日進行系統(tǒng)程序的詳細設計,編寫代碼5月11日-5月20日系統(tǒng)測試,資料整理由以上進度計劃表可以得出本次設計的大致進度計劃,在兩個月左右的時間里儲備計算機的相關知識、熟悉開發(fā)技術與開發(fā)環(huán)境、完成系統(tǒng)的編寫與調試,雖然有一定的難度,但通過上文對可行性的逐一分析,大致可以在規(guī)定時間內將系統(tǒng)基本實現(xiàn)。第3節(jié) 功能描述作為簡單快捷的小

32、游戲大廳系統(tǒng),主要有游戲體驗,游戲管理 ,公告管理以及用戶信息管理等功能。系統(tǒng)的管理員與在玩用戶(即玩家)為此系統(tǒng)的主要使用者。 在本系統(tǒng)內,管理員可對游戲信息進行刪、增、改,查等操作。管理員通過對游戲熱度的監(jiān)控,可實時調整大廳內的游戲種類,同時更新數(shù)據(jù)庫信息,方便管理人員實時了解用戶需求并不斷調整大廳游戲配置;管理人員還有管理普通用戶的權利,根據(jù)用戶行為增刪改查普通用戶的基本信息。對于玩家用戶,即本系統(tǒng)的服務對象,主要功能是游戲體驗,對于大廳內的每個游戲進行體驗,對喜歡的游戲進行收藏方便日后查找。整個系統(tǒng)需要玩家、管理員與游戲三者有機結合,打造一個輕松專業(yè)的管理平臺。根據(jù)以上的分析,本系統(tǒng)的

33、構思大致為以下幾個方面:通過SQL Server構建游戲的數(shù)據(jù)庫,設計游戲大廳的界面基本功能以及游戲的鏈接(包含三個小游戲貪吃蛇,掃雷,走迷宮),設計用戶的登錄退出以及新用戶注冊,用戶可進行小游戲收藏等功能。設置管理員權限可發(fā)布公告,大廳內根據(jù)游戲熱度進行實時排名顯示在首頁。下面將對整個系統(tǒng)的功能進行描述。一、用戶注冊在注冊頁面中只能注冊普通用戶,無管理員權限注冊。為了整個系統(tǒng)管理方便,本系統(tǒng)只設計一位管理員進行所有功能的管理。二、菜單管理不同的用戶類型登錄有不同的菜單選項。管理員通過賬號登錄后,擁有對菜單項中所有界面訪問的最高權限。普通用戶登陸后僅能訪問系統(tǒng)首頁、游戲界面、公告頁面。此功能有

34、效的區(qū)分了不同用戶的權限,提高了系統(tǒng)的邏輯層次。三、用戶管理(一)系統(tǒng)管理員登錄后,在系統(tǒng)內可以新增游戲鏈接、修改游戲、刪除游戲、管理用戶賬號(用戶的增、刪、改、查操作)等操作。如需修改、刪除大廳內小游戲或用戶,當管理員選擇“修改”按鈕,當前界面會進行跳轉,管理員可以進行需要的修改。(二)普通用戶可修改自身用戶密碼、手機號等信息。四、游戲管理(一)游戲管理中,系統(tǒng)管理員可以新增游戲鏈接、修改游戲、禁用、刪除游戲等操作。(二)普通用戶只能點擊游戲列表中的游戲跳轉至游戲界面,并增加此游戲的點擊量。五、公告管理(一)管理員負責公告信息,負責對公告進行新增、禁用、刪除等操作。(二)公告信息是管理發(fā)布公

35、告后在用戶界面中的公告頁面中可以查看。 圖 3- 2總體需求分析圖根據(jù)圖3-2的總體需求分析可知,多功能游戲大廳系統(tǒng)的主要功能模塊有:普通用戶管理模塊,游戲模塊和管理員模塊。在各個模塊之下,又含有多個子功能,分別是:游戲體驗、游戲管理(收藏)、游戲數(shù)據(jù)、游戲點擊量、游戲信息管理、公告信息管理、用戶信息管理。第4節(jié) 數(shù)據(jù)庫設計數(shù)據(jù)庫是很重要的部分。沒有了數(shù)據(jù)庫管理系統(tǒng)的支持,是不能進行收集信息和對信息的一系列處理。當前在進行軟件系統(tǒng)設計和系統(tǒng) 開發(fā)時最為關鍵也是最為核心的步驟時對系統(tǒng)的數(shù)據(jù)庫部分進行合理設計13。一、概要設計概要設計的目的是確認系統(tǒng)中存在的所有實體,以及理清各個實體之間的關系,該

36、部分的設計質量會影響數(shù)據(jù)庫邏輯設計的過程。以下圖3-3是本系統(tǒng)的E-R圖。圖3-3 E-R圖 根據(jù)以上E-R圖可以得出,本系統(tǒng)的實體主要有管理員、用戶、公告與游戲。由于本系統(tǒng)設定管理員賬號只有一位,所以管理員在后臺可以管理多個用戶或游戲的信息,同時可以在游戲大廳內發(fā)布多個公告,因此為一對多關系;用戶可以收藏多個游戲,一款游戲在系統(tǒng)中也可以被不同的用戶收藏,因此為多對多關系。二、數(shù)據(jù)庫邏輯設計根據(jù)上述E-R圖與第三章的功能描述可知,本系統(tǒng)的主要實體有管理員、普通用戶、公告、游戲。其中管理員可對用戶信息和游戲信息進行增、刪、改、查等操作??梢园l(fā)布公告并對公告進行管理。用戶可以在游戲大廳中體驗不同的

37、游戲,并對喜愛的游戲進行收藏。本系統(tǒng)數(shù)據(jù)庫名稱為db_game_hall,共含有如下6張表結構,這6張表的設計含義見表3-3所示,表3-4至表3-8列出了各個表的屬性字段的內容及含義。根據(jù)對本系統(tǒng)中各實體的關系進行分析,可以得出如下數(shù)據(jù)表。表 3- 3 數(shù)據(jù)庫表信息一覽表名稱含義t_sys_user用戶表,用于記錄用戶名、密碼、角色等t_game_info游戲信息表,用于記錄游戲名、鏈接、類型、點擊量、評分等t_collector收藏信息表,用于用戶收藏的游戲等相關信息t_notice公告信息表,用于記錄公告內容、標題、發(fā)布時間、發(fā)布人等t_gly管理員信息表,用于儲存管理員信息詳細字段信息及

38、其相關含義列舉如下:表3-4是用戶信息表,包含了userid、phone、password、username等字段,這些字段代表了用戶名、手機號、密碼、用戶昵稱等用戶信息。其中userid為主鍵。表 3- 4 t_sys_user表(用戶信息表)序號字段名類型約束字段說明1useridvarchar(32)主鍵用戶名2phonevarchar(11)手機號3passwordvarchar(24)密碼4usernamevarchar(11)用戶昵稱5img_urlvarchar(64)頭像地址6typeint角色類型 1:普通、2:管理員7tokenvarchar(64)Token8expiry

39、_timedateTime失效時間9enablevarchar(11)數(shù)據(jù)有效性注:enable:ENABLE:有效、DISENABLE:禁用、DELETE:刪除表3-5是游戲信息表,包含了gameid、name、img_url、game_url等字段,這些字段代表了游戲編號、游戲名稱、游戲圖片地址、游戲鏈接地址等游戲信息。其中gameid為主鍵。表 3- 5 t_game_info表(游戲信息表)序號字段名類型約束字段說明1gameidvarchar(32)主鍵游戲編號2namevarchar(64)游戲名稱3img_urlvarchar(64)游戲圖片地址4game_urlvarchar(

40、125)游戲鏈接地址5typeint游戲類型 6click_tateint點擊量7create_timedateTime創(chuàng)建時間8creatervarchar(32)創(chuàng)建人9enablevarchar(11)數(shù)據(jù)有效性注:enable:ENABLE:有效、DISENABLE:禁用、DELETE:刪除表3-6是管理員表,包含了managerid、password等字段,這些字段代表了管理員名稱、密碼等管理員信息。其中userid為主鍵。表 3- 6 t_gly表(管理員表)序號字段名類型約束字段說明1manageridvarchar(32)主鍵管理員名稱2passwordvarchar(24)密

41、碼表3-7是收藏信息表,包含了collectionid、userid、gameid、collection date等字段,這些字段代表了收藏編號、用戶ID、游戲ID、收藏時間等收藏信息。其中collectionid為主鍵。表 3- 7 t_collector 表(收藏信息表)序號字段名類型約束字段說明1collectionidvarchar(32)主鍵收藏編號2useridvarchar(32)用戶ID3gameidvarchar(11)游戲ID4collection_datedateTime收藏時間5enablevarchar(11)數(shù)據(jù)有效性注:enable:ENABLE:有效、DISEN

42、ABLE:禁用、DELETE:刪除表3-6是公告信息表,包含了noticeid、title、content、release_time等字段,這些字段代表了公告編號、公告標題、公告內容、發(fā)布時間等公告信息。其中noticeid為主鍵。表 3- 8 t_notice表(公告信息表)序號字段名類型約束字段說明1noticeidvarchar(32)主鍵公告編號2titlevarchar(125)公告標題3contentvarchar(225)公告內容4release_timedateTime發(fā)布時間5typeint1:及時發(fā)布、2:到時發(fā)布6create_timedateTime創(chuàng)建時間7creat

43、ervarchar(11)創(chuàng)建人8enablevarchar(11)數(shù)據(jù)有效性注:enable:ENABLE:有效、DISENABLE:未啟用、DELETE:刪除 第四章 系統(tǒng)實現(xiàn) 第一節(jié) 架構分析一、實體層對象類該系統(tǒng)包含兩個實體類,分別是用戶信息類UserVo和游戲信息類GameVo。類通過封裝一系列的私有屬性,并通過Set和Get方法進行調用。下面展示部分用戶信息類UserVo,具體內容如圖4-1。圖 4- 1 類UserVo二、持久層持久層對于傳統(tǒng)的SSM框架來說是與Mybatis打交道的,通常設計中通過創(chuàng)建接口然后在調用相對應的XML文件,完成對業(yè)務層的功能接口。游戲管理持久層Use

44、rServiceImpl,GameServiceImpl,添加用戶登錄、用戶注冊抽象方法:圖4- 2 持久層用戶登錄用戶注冊然后,創(chuàng)建映射文件UserMapper.xml,GameMapper.xml:三、業(yè)務層業(yè)務層這部分使用了注解的開發(fā)方法,利用Service和Autowired實現(xiàn)了注解開發(fā),注解持久層的IPersist接口并創(chuàng)建了profilePersist對象,通過注解的方式,直接調用接口的方法而不用再生命對象。以用戶管理、游戲管理為例,創(chuàng)建對應的業(yè)務接口UserService、GameService:四、表現(xiàn)層表現(xiàn)層(也叫控制層)也是利用了注解的方式Controller。用戶登錄;

45、在登錄過程中,首先要獲取Session中的驗證碼,輸入驗證碼后通過if語句判斷驗證碼是否正確,手機號密碼是否為空,用戶名密碼是否錯誤。若無誤即可登陸成功。在表現(xiàn)層中,可實現(xiàn)對系統(tǒng)內游戲的增刪改查以及記錄游戲點擊量的變化。表現(xiàn)層利用注解Controller,Autowired完成對象ProfileService的方法的實現(xiàn)。創(chuàng)建Map對象作為傳輸?shù)角岸说拿浇?。利用注解方法獲取后端的數(shù)據(jù)。最后數(shù)據(jù)返回到前端。六、前后端接口實現(xiàn)在前期框架搭建的步驟中,通過加入Json.jar包,同時在Spring-MVC.xml的做出“<mvc:annotation-driven />”聲明,我們可以利

46、用AJAX+JSON動態(tài)局部刷新實現(xiàn)前后臺數(shù)據(jù)的交互14。下面以游戲管理前端代碼為例,主要講述前后端接口實現(xiàn)過程。此部分包含用戶收藏的游戲信息,游戲編輯、游戲訪問量排名前端方法實現(xiàn)。39七、針對前端發(fā)送的ajax請求解釋說明:此處,設置的方法為只要點擊“class="e-login-btn"”的按鈕,就會觸發(fā)“dialogRegister”這個函數(shù)。同時向后端發(fā)送一組數(shù)據(jù),內容為:url:發(fā)送的額請求地址,后臺controller用RequestMapping的value屬性接受請求15。type:請求方式(如post,get,delete等),controller的met

47、hod屬性與之相對應。dataType:"json":告訴后端,前端需要的是JSON格式的數(shù)據(jù)。contentType:"application/json;charset=utf-8":告訴后臺前端傳過去的數(shù)據(jù)是JSON格式,后臺需要用JSON的方式進行解析?!癲ata:jsonstr”:這里指數(shù)據(jù)類型必須得是JSON字符串,javascript中Json對象轉化為Json字符串的方法:JSON.stringify()。success:成功接收后端返回的數(shù)據(jù)后要執(zhí)行的操作,此處是彈出結果窗口,里面的數(shù)據(jù)即對應后端返回的數(shù)據(jù)16。error:接收數(shù)據(jù)失敗或

48、后端返回錯誤結果時,頁面將出現(xiàn)提示信息。開始時在spring-MVC配置文件中加入的<mvc:annotation-driven />會自動將AnnotationMethodHandlerAdapter類注入到Spring容器,該類中有很多消息轉換器(HttpMessageConverter),JSON轉換器便是其中的一個。在請求數(shù)據(jù)(HttpInputMessage)到達后臺時會經過JSON轉換器將數(shù)據(jù)轉化為JSON對象然后通過RequestBody賦值給Controller類中方法的參數(shù)。Controller類中方法的返回的對象會先經過JSON轉換器轉化為JSON對象變成響應數(shù)

49、jiHttpOutputMessage然后寫進響應報文傳給前臺。Json數(shù)據(jù)轉換原理圖如圖6-3所示17。圖 4-3 Spring MVC前后端JSON數(shù)據(jù)轉換原理圖這里遵循軟件工程源程序文檔化的思想,各個模塊的類及其方法定義都做了詳細地說明,對主要的類和方法意義及SSM三層架構的實現(xiàn)做了較為詳細的注釋18。第二節(jié) 登錄注冊界面設計一、用戶登錄及注冊模塊系統(tǒng)用戶,登錄界面如圖4-4所示,此界面展示的是用戶登錄入口,如需登錄管理員界面,則要輸入相對應的管理員賬號密碼信息進行登錄。圖 4- 4 系統(tǒng)登錄界面圖 4- 5 登錄界面代碼圖新玩家用戶如需進行注冊,點擊“去注冊”后對應出現(xiàn)圖4-6,在登錄

50、時,新玩家需要輸入新的用戶名、手機號與密碼,信息填寫完成后即可注冊成功。對于游戲大廳系統(tǒng)的登錄界面,設計不能過于冗雜,因此用戶名與登錄密碼應為整個界面最突出的主體,其中,管理員可通過特殊賬戶登錄,管理員登錄完后,可以對普通用戶進行管理,并實時發(fā)布一些相關信息,幫助用戶更好的使用自己的賬號。吸收市面上先進游戲大廳系統(tǒng)的經驗,用戶界面越簡單明了越吸引用戶,整體界面一目了然,用戶可以直接找到相對應的位置,填寫好自己的信息。但設計時有一點非常重要,文本框不能空白,系統(tǒng)在此將檢驗該部分是否為空,數(shù)據(jù)庫鏈接結束后若用戶名與密碼正確,可完成界面的登錄。在整體登陸后,相關信息會反映到后臺進行處理,管理員會在在

51、此時進行整體管理,防止惡意盜號等其他非正常情況發(fā)生。圖 4- 6 用戶注冊界面用戶在登錄時用戶名或密碼等信息不可為空,同理,新用戶在注冊界面進行信息填寫時,手機號、用戶名與密碼皆不可為空,否則會彈出提示窗口,如圖4-7所示。新用戶可根據(jù)該窗口的提醒及時核對并更正本人的注冊信息,從而完成用戶注冊。圖 4-7 信息填寫界面界面 圖 4- 8 注冊界面代碼圖第三節(jié)  游戲大廳界面設計 一、系統(tǒng)管理員界面系統(tǒng)管理員在成功登錄后,將顯示主界面,如圖4-9所示。系統(tǒng)管理主界面集成了管理員擁有的所有菜單權限和功能。所包含的功能模塊為:【系統(tǒng)管理】(包含玩家用戶信息管理、菜單管理等),【游

52、戲管理】(包含游戲鏈接增加、編輯、刪除,游戲相關圖片插入、修改,游戲鏈接順序修改等),【公告管理】(公告信息的增加、刪除等),管理員的主要作用是整體的處理不同用戶在游戲中的各種信息,將其賬號,游戲等級的每個賬戶的不同信息進行整體系統(tǒng)化的管理,同時將相似類型的游戲推薦給對該類型興趣比較多的用戶,進行智能化,信息化的統(tǒng)一管理;同時對于惡意篡改他人賬號的用戶進行封禁等其他處理。圖 4- 9 系統(tǒng)管理員主界面如圖4-10管理員對用戶進行管理時,對違反規(guī)定的用戶可進行凍結賬戶的操作。暫時封禁此用戶賬號,待用戶符合游戲大廳使用規(guī)定后可再次進行解凍操作。圖 4- 10 用戶凍結界面圖 4- 11 用戶凍結代

53、碼二、普通用戶界面普通用戶只能點擊游戲列表中的游戲跳轉至游戲界面(由于跳轉的是新窗口,在此過程中瀏覽器可能會彈出攔截新窗口的提示,使用過程中需要點擊允許),并增加此游戲的點擊量,對于普通用戶而言,是游戲最重要的體驗者,并根據(jù)普通用戶的游戲體驗,對游戲本身進行改進與完善,并進行玩法上的更新與嘗試,用戶的體驗與反饋是整個游戲大廳最重要的基石。同時,用戶根據(jù)個人的喜好可以對新游戲進行建議,方便游戲大廳整體得到提升。圖4-12為普通用戶登錄后主界面。圖 4- 12 普通用戶登錄后主界面當用戶點擊游戲進行體驗時,系統(tǒng)將跳轉至該游戲鏈接所對接的界面,用戶在此界面上可進行游戲操作與體驗,如圖4-13為點擊掃

54、雷游戲后出現(xiàn)的游戲界面。圖 4-13 掃雷游戲界面三、游戲熱度實時排名本系統(tǒng)在游戲大廳界面可對小游戲的點擊量進行實時更新匯總,顯示于每個小游戲圖表下方。用戶在點擊界面左上角的【按游戲人氣】按鈕后,系統(tǒng)將在此界面根據(jù)游戲人氣進行游戲熱度排名。通過此排名可直觀清晰的了解各游戲的被喜愛程度,從而選擇更適合自己的小游戲,管理員也可根據(jù)熱度排名及時刪減或更新大廳內的游戲種類。提升了整體體統(tǒng)的實時性與使用性。圖4-14為游戲的點擊量顯示界面圖 4-14 點擊量顯示界面圖 4-15 增加點擊量代碼圖4-16為點擊按鈕后按照點擊量完成排名后的游戲界面圖 4-16 熱度排名界面圖 4-17 熱度排名代碼第四節(jié)

55、游戲管理模塊 游戲模塊包含添加游戲信息、修改游戲信息、根據(jù)ID查詢游戲信息、游戲收藏、增加游戲列表等功能。增加與修改游戲信息等權限僅管理員可進行相應操作。1、 游戲增刪改查管理員通過后臺用戶所反應的游戲點擊量與喜愛度可在系統(tǒng)內對游戲進行增刪改查。同時整體的游戲運營與反饋是管理者與用戶雙向進行的。用戶根據(jù)自己游戲體驗,對游戲的缺點以及漏洞進行反饋,同時有喜歡的游戲類型同樣可以反饋給后臺管理者,并根據(jù)自己的興趣進行游戲分類,方便自己游戲。對于管理人員,安排人手內部測試的同時,信息搜集是重中之重,搜集當下最有趣的游戲,有助于提高用戶滿意度,增加游戲大廳的整體競爭力。圖 4- 18 新增游戲信息界面圖 4-19 游戲管理代碼2、 游戲收藏用戶在體驗過程中如有喜愛的游戲,可通過點擊游戲圖標下方的收藏游戲對指定游戲進行收藏。圖 4-20 收藏成功界面對于用戶已經收藏過的游戲,若再次點擊收藏按鈕,則會跳出彈窗提示用戶已經收藏過該游戲。該功能有效解決了單個游戲多次收藏

溫馨提示

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

評論

0/150

提交評論