大學(xué)生論壇系統(tǒng)的設(shè)計(jì)與開發(fā)_第1頁(yè)
大學(xué)生論壇系統(tǒng)的設(shè)計(jì)與開發(fā)_第2頁(yè)
大學(xué)生論壇系統(tǒng)的設(shè)計(jì)與開發(fā)_第3頁(yè)
大學(xué)生論壇系統(tǒng)的設(shè)計(jì)與開發(fā)_第4頁(yè)
大學(xué)生論壇系統(tǒng)的設(shè)計(jì)與開發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

本科畢業(yè)論文(設(shè)計(jì)) 題目:大學(xué)生論壇系統(tǒng)的設(shè)計(jì)與開發(fā)學(xué)院:專業(yè)班級(jí):學(xué)號(hào):學(xué)生姓名:指導(dǎo)教師姓名:指導(dǎo)教師職稱:年月日PAGE2摘要伴隨著3G網(wǎng)絡(luò)的發(fā)展,手機(jī)越來(lái)越普及并且成為最便捷的聯(lián)接網(wǎng)絡(luò)的終端。消費(fèi)者也越來(lái)越注重對(duì)各個(gè)平臺(tái)的手機(jī)軟件的社交體驗(yàn)。而且開發(fā)者也越來(lái)越注重手機(jī)客戶端的市場(chǎng)和推廣。對(duì)于如此便捷的環(huán)境,也應(yīng)運(yùn)產(chǎn)生了一批優(yōu)秀的跨各種平臺(tái)的社交軟件。在競(jìng)爭(zhēng)激烈的手機(jī)市場(chǎng)中,android手機(jī)的操作系統(tǒng)在完勝諾基亞的塞班系統(tǒng)后,一躍成為全球用戶量最大的只能手機(jī)平臺(tái)之一。而且android系統(tǒng)不但應(yīng)用于智能手機(jī),也在平板電腦市場(chǎng)中占有龐大的市場(chǎng)份額。為了方便校園中信息的實(shí)時(shí)發(fā)布,為了同學(xué)們方便溝通交流,為了鍛煉自身能力,我開發(fā)了一款專門為學(xué)生實(shí)用的android的論壇客戶端,該系統(tǒng)采用C/S架構(gòu)??梢宰寣W(xué)生方便的接受發(fā)布者發(fā)布的信息,并且方便用戶之間的溝通。因?yàn)檐浖iT為學(xué)生量身定做,所以受眾就是同校學(xué)生或者同城學(xué)生。校園可以在系統(tǒng)在發(fā)布實(shí)時(shí)信息(如畢業(yè)生廉價(jià)處理課本,生活用品,組團(tuán)旅游等),讓志同道合的同志們都的看到,并且做出響應(yīng)。打造一款大學(xué)生在校生活的精品軟件。系統(tǒng)基于android系統(tǒng)開發(fā),采用java做服務(wù)器后臺(tái),并且可以方便的擴(kuò)展開發(fā)ios客戶端。在網(wǎng)絡(luò)發(fā)展成熟的今天,靈活實(shí)時(shí)的保證了數(shù)據(jù)的統(tǒng)一。對(duì)于大學(xué)生們來(lái)說(shuō),既擴(kuò)大不過(guò)分暴漏出自己的交際圈,又開闊了自己的視野,為大學(xué)生活提供了方便。希望這一套系統(tǒng)可以的校園中應(yīng)用起來(lái),希望這款軟件可以活在同學(xué)們的手掌里。采用java技術(shù)設(shè)計(jì)和實(shí)現(xiàn)服務(wù)器,用android實(shí)現(xiàn)客戶端,保證軟件良好運(yùn)行。簡(jiǎn)要介紹了java三大框架開發(fā)(struts+spring+hibernate)的技術(shù)特點(diǎn)和數(shù)據(jù)庫(kù)技術(shù),隨后簡(jiǎn)要的概述android的開發(fā)要點(diǎn),并且簡(jiǎn)要的講一下ios的開發(fā)擴(kuò)展,在后臺(tái)數(shù)據(jù)管理方便用到j(luò)sp技術(shù)。并且構(gòu)建一個(gè)C/S模式的論壇系統(tǒng),并對(duì)該系統(tǒng)進(jìn)行需求分析,總體設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼與測(cè)試。并為后臺(tái)數(shù)據(jù)管理做一個(gè)簡(jiǎn)單的分析。關(guān)鍵詞:論壇系統(tǒng);JAVAEE;ANDROIDAbstractWiththedevelopmentof3Gnetworks,mobilephonesbecomemoreandmorepopularandthemostconvenientconnectionnetworkterminals.Consumersareincreasinglyfocusingonmobilesoftwareforeachplatformsocialexperience.Anddevelopersareincreasinglyfocusingonmobileclient'smarketingandpromotion.Forsuchaconvenientenvironment,butalsoproducedanumberofoutstandingshouldbetransportedacrossthevariousplatformsofsocialsoftware.Inthehighlycompetitivemobilephonemarket,androidmobilephoneoperatingsysteminthewinoverNokia'sSymbiansystem,becametheworld'slargestuserofonlyonemobileplatform.Andandroidsystemisnotonlyusedinsmartphones,tabletPCmarketalsooccupiesalargemarketshare.Inordertofacilitatereal-timeinformationoncampuspublication,inordertofacilitatecommunicationbetweenthestudents,inordertoexercisetheirowncapacity,Idevelopedadedicatedforumforstudentpracticalandroidclient,thesystemusesC/Sstructure.Allowsstudentstoeasilyacceptthepublisherspublishinformation,andtofacilitatecommunicationbetweenusers.Becausethesoftwaretailoredspecificallyforstudents,sotheaudienceisthesameschoolstudentorstudentcity.Campuscanpublishreal-timeinformationsystem(suchaslow-costprocessinggraduatetextbooks,supplies,grouptravel,etc.),sothatlike-mindedcomradesaretoseeandrespond.Studentsintheschooloflifetobuildaboutiquesoftware.Basedontheabovedescription,thepresentsystemisbasedonandroidsystemdevelopment,usingjavatodoserverdaemon,andcandevelopiosclient.Today,thenetworkmature,flexiblereal-timedatatoensuretheunity.Forcollegestudentswhoareviolent,butpointsbothtoexpandtheirsocialcircleleaked,butalsobroadentheirhorizons,makelifeeasierfortheuniversity.Hopethatthissystemcanbesetuponcampusintheapplication,thesoftwarecanliveinhopethatthestudentsofthepalm.Thispaperdescribesthedesignandimplementationtechniqueswithjavaserverdaemonwithandroidachievetheclient,ensurethatthesoftwarerunningwell.Brieflydescribesthreeframeworksjavadevelopment(struts+spring+hibernate)thetechnicalcharacteristicsanddatabasetechnology,followedbyabriefoverviewofthemainpointsandroiddevelopment,andbrieflytalkaboutthedevelopmentofextensionsiosinthebackgroundjsptechnologyusedtofacilitatedatamanagement.AndbuildaC/Smodeforumsystem,andthesystemneedsanalysis,design,detaileddesign,codingandtesting.Anddatamanagementforthebackgroundtodoasimpleanalysis.Keywords:forumsystem;JAVAEE;ANDROID目錄TOC\o"1-3"\h\u128261緒論 1214281.1選題背景 126021.2C/S架構(gòu)簡(jiǎn)介 1282011.3JSP技術(shù)簡(jiǎn)介 2246921.4MVC框架簡(jiǎn)介 2208401.5Struts+Spring+Hibernate框架簡(jiǎn)介 2325091.6數(shù)據(jù)庫(kù)技術(shù)簡(jiǎn)介 3115501.7android技術(shù)簡(jiǎn)介 355171.8IOS技術(shù)簡(jiǎn)介 3321212需求分析與系統(tǒng)設(shè)計(jì) 4135642.1需求分析 419942.1.1功能需求 435292.1.2性能需求 43232.1.3開發(fā)環(huán)境 4216022.1.4運(yùn)行環(huán)境 5226732.2基本設(shè)計(jì)原則 52072.3業(yè)務(wù)流程設(shè)計(jì) 585492.3.1客戶端業(yè)務(wù)流程設(shè)計(jì) 532332.3.2后臺(tái)業(yè)務(wù)流程設(shè)計(jì) 6228252.4數(shù)據(jù)庫(kù)設(shè)計(jì) 6105682.4.1概念數(shù)據(jù)模型設(shè)計(jì) 7139402.4.2邏輯數(shù)據(jù)模型設(shè)計(jì) 7313052.4.3物理數(shù)據(jù)模型設(shè)計(jì) 72442.5系統(tǒng)結(jié)構(gòu)設(shè)計(jì) 8312032.5.1頁(yè)面結(jié)構(gòu)設(shè)計(jì) 876642.5.2代碼結(jié)構(gòu)設(shè)計(jì) 892583系統(tǒng)詳細(xì)設(shè)計(jì) 1075653.1數(shù)據(jù)庫(kù)實(shí)現(xiàn) 1091173.2服務(wù)器設(shè)計(jì) 10141983.2.1服務(wù)器端工具 10214373.2.2軟件包和JAVA源代碼文件 11229453.2.3服務(wù)器的整體架構(gòu) 11207993.2.4服務(wù)器對(duì)外交互分析 12169523.3客戶端設(shè)計(jì) 12196483.3.1頁(yè)面布局處理 1297283.3.2客戶端源碼結(jié)構(gòu) 13154003.5后臺(tái)設(shè)計(jì) 14119473.5.1JSP文件結(jié)構(gòu) 14102733.5.2JSTL 14145794頁(yè)面展示 16323324.1客戶端頁(yè)面展示 16144634.2主頁(yè)面展示 17220454.3后臺(tái)數(shù)據(jù)控制頁(yè)面 196097總結(jié) 2117789致謝 2223764參考文獻(xiàn) 222985附錄 24PAGE261緒論1.1選題背景在互聯(lián)網(wǎng)高度發(fā)展的今天,大學(xué)的校園里雖然人滿為患,但是同學(xué)之間的交流還是機(jī)會(huì)不多。雖然大學(xué)校園里會(huì)時(shí)不時(shí)的舉辦一些活動(dòng),但是這不是對(duì)每一個(gè)都是一個(gè)機(jī)會(huì)。為了增強(qiáng)同學(xué)們之間的交流,增加校園的親和力,本系統(tǒng)為大學(xué)生們量身定做,方便校園的交流,保證信息在用戶中快速輻射。在網(wǎng)絡(luò)發(fā)展成熟的今天,同學(xué)們的手機(jī)中必備的軟件中也不乏社交類的,比如QQ,微信,微博,人人等等,但是這些軟件的主題不是針對(duì)學(xué)生。在加上現(xiàn)在android系統(tǒng)的手機(jī)如此普遍,基本上每個(gè)學(xué)生手里都有一臺(tái),同學(xué)們?cè)谕惾说纳鐓^(qū)里緩解壓力是最有效的。而且市場(chǎng)不會(huì)為學(xué)生開發(fā)這樣一款針對(duì)性這么強(qiáng)的軟件。但是我們?cè)趯W(xué)校學(xué)習(xí)了知識(shí),自己為自己開發(fā),方便自己!所以選擇論壇客戶端作為設(shè)計(jì)題目,有助于改善同學(xué)們的心理環(huán)境和生活環(huán)境,推動(dòng)同學(xué)們的素質(zhì)發(fā)展。并要求學(xué)生在開發(fā)過(guò)程中自學(xué)有關(guān)開發(fā)技術(shù),對(duì)日后工作或繼續(xù)研究都有著重要的意義。1.2C/S架構(gòu)簡(jiǎn)介客戶端和服務(wù)器架構(gòu)。它是軟件系統(tǒng)體系結(jié)構(gòu),通過(guò)它可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到Client端和Server端來(lái)實(shí)現(xiàn),降低了系統(tǒng)的通訊開銷。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是Client/Server形式的兩層結(jié)構(gòu),由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的Web應(yīng)用發(fā)展,Web和Client/Server應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件;因此,內(nèi)部的和外部的用戶都可以訪問(wèn)新的和現(xiàn)有的應(yīng)用系統(tǒng),通過(guò)現(xiàn)有應(yīng)用系統(tǒng)中的邏輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。這也就是目前應(yīng)用系統(tǒng)的發(fā)展方向。C/S結(jié)構(gòu)的優(yōu)點(diǎn)是能充分發(fā)揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務(wù)器。對(duì)應(yīng)的優(yōu)點(diǎn)就是客戶端響應(yīng)速度快。具體表現(xiàn)在以下兩點(diǎn):(1)應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較輕。最簡(jiǎn)單的C/S體系結(jié)構(gòu)的數(shù)據(jù)庫(kù)應(yīng)用由兩部分組成,即客戶應(yīng)用程序和數(shù)據(jù)庫(kù)服務(wù)器程序。二者可分別稱為前臺(tái)程序與后臺(tái)程序。運(yùn)行數(shù)據(jù)庫(kù)服務(wù)器程序的機(jī)器,也稱為應(yīng)用服務(wù)器。一旦服務(wù)器程序被啟動(dòng),就隨時(shí)等待響應(yīng)客戶程序發(fā)來(lái)的請(qǐng)求;客戶應(yīng)用程序運(yùn)行在用戶自己的電腦上,對(duì)應(yīng)于數(shù)據(jù)庫(kù)服務(wù)器,可稱為客戶電腦,當(dāng)需要對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行任何操作時(shí),客戶程序就自動(dòng)地尋找服務(wù)器程序,并向其發(fā)出請(qǐng)求,服務(wù)器程序根據(jù)預(yù)定的規(guī)則作出應(yīng)答,送回結(jié)果,應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較輕。(2)數(shù)據(jù)的儲(chǔ)存管理功能較為透明。在數(shù)據(jù)庫(kù)應(yīng)用中,數(shù)據(jù)的儲(chǔ)存管理功能,是由服務(wù)器程序和客戶應(yīng)用程序分別獨(dú)立進(jìn)行的,并且通常把那些不同的(不管是已知還是未知的)前臺(tái)應(yīng)用所不能違反的規(guī)則,在服務(wù)器程序中集中實(shí)現(xiàn),例如訪問(wèn)者的權(quán)限,編號(hào)可以重復(fù)、必須有客戶才能建立定單這樣的規(guī)則。所有這些,對(duì)于工作在前臺(tái)程序上的最終用戶,是“透明”的,他們無(wú)須過(guò)問(wèn)(通常也無(wú)法干涉)背后的過(guò)程,就可以完成自己的一切工作。在客戶服務(wù)器架構(gòu)的應(yīng)用中,前臺(tái)程序不是非?!笆菪 ?,麻煩的事情都交給了服務(wù)器和網(wǎng)絡(luò)。在C/S體系下,數(shù)據(jù)庫(kù)不能真正成為公共、專業(yè)化的倉(cāng)庫(kù),它受到獨(dú)立的專門管理。1.3JSP技術(shù)簡(jiǎn)介JSP(JavaServerPages)是一種基于內(nèi)置Java代碼的、用于創(chuàng)建動(dòng)態(tài)內(nèi)容的腳本語(yǔ)言,它天然地具備Java技術(shù)的跨平臺(tái)特性,從而在廣泛的基于網(wǎng)絡(luò)的應(yīng)用中迅速得到應(yīng)用,成為當(dāng)前軟件領(lǐng)域最熱門的技術(shù)之一。JSP技術(shù)設(shè)計(jì)多種軟件技術(shù)和標(biāo)準(zhǔn),諸如Java、HTML、數(shù)據(jù)庫(kù)等,并且廣泛應(yīng)用于動(dòng)態(tài)網(wǎng)站的建設(shè)中。1.4MVC框架簡(jiǎn)介M(Model,模型)、V(view,視圖)、C(controller,控制器)。是XeroxPARC在八十年代為編程語(yǔ)言Smalltalk-80發(fā)明的一種軟件設(shè)計(jì)模式,至今已被廣泛使用。最近幾年被推薦位Oracle旗下Sun公司JavaEE平臺(tái)的設(shè)計(jì)模式,并且受到越來(lái)越多的使用ColdFusion和PHP開發(fā)者的歡迎。MVC設(shè)計(jì)模式把程序的輸入、處理和輸出分開,使各個(gè)部件處理自己的任務(wù)。使程序有較高的重用性和適用性,并且有著較低的生命周期成本,有利于軟件工程化管理并具備較高的可維護(hù)性。1.5Struts+Spring+Hibernate框架簡(jiǎn)介Struts只是一個(gè)MVC框架(Framework),用于快速開發(fā)JavaWeb應(yīng)用。Struts實(shí)現(xiàn)的重點(diǎn)在C(Controller),包括ActionServlet/RequestProcessor和我們定制的Action,也為V(View)提供了一系列定制標(biāo)簽(CustomTag)。但Struts幾乎沒(méi)有涉及M(Model),所以Struts可以采用JAVA實(shí)現(xiàn)的任何形式的商業(yè)邏輯。Spring是一個(gè)輕型容器(light-weightcontainer),其核心是Bean工廠(BeanFactory),用以構(gòu)造我們所需要的M(Model)。在此基礎(chǔ)之上,Spring提供了AOP(Aspect-OrientedProgramming,面向?qū)用娴木幊蹋┑膶?shí)現(xiàn),用它來(lái)提供非管理環(huán)境下申明方式的事務(wù)、安全等服務(wù);對(duì)Bean工廠的擴(kuò)展ApplicationContext更加方便我們實(shí)現(xiàn)J2EE的應(yīng)用;DAO/ORM的實(shí)現(xiàn)方便我們進(jìn)行數(shù)據(jù)庫(kù)的開發(fā);WebMVC和SpringWeb提供了JavaWeb應(yīng)用的框架或與其他流行的Web框架進(jìn)行集成。

就是說(shuō)可將兩者一起使用,達(dá)到將兩者自身的特點(diǎn)進(jìn)行互補(bǔ)。Hibernate是一個(gè)免費(fèi)的開源Java包,它使得與關(guān)系數(shù)據(jù)庫(kù)打交道變得十分輕松,就像您的數(shù)據(jù)庫(kù)中包含每天使用的普通Java對(duì)象一樣,同時(shí)不必考慮如何把它們從神秘的數(shù)據(jù)庫(kù)表中取出(或放回到數(shù)據(jù)庫(kù)表中)。它解放了您,使您可以專注于應(yīng)用程序的對(duì)象和功能,而不必?fù)?dān)心如何保存它們或稍后如何找到它們。1.6數(shù)據(jù)庫(kù)技術(shù)簡(jiǎn)介數(shù)據(jù)庫(kù)技術(shù)是現(xiàn)代信息科學(xué)與技術(shù)的重要組成部分,是計(jì)算機(jī)數(shù)據(jù)處理與信息管理系統(tǒng)的核心。數(shù)據(jù)庫(kù)技術(shù)研究和結(jié)局了計(jì)算機(jī)信息處理過(guò)程中大量數(shù)據(jù)有效地組織和存儲(chǔ)的問(wèn)題,在數(shù)據(jù)庫(kù)系統(tǒng)中減少數(shù)據(jù)存儲(chǔ)冗余,實(shí)現(xiàn)數(shù)據(jù)共享、保障數(shù)據(jù)安全以及高效得檢索和處理數(shù)據(jù)。SQL:StructuredQueryLanguage(結(jié)構(gòu)化查詢語(yǔ)言),是一種數(shù)據(jù)庫(kù)查詢和程序設(shè)計(jì)語(yǔ)言,可以用于存儲(chǔ)數(shù)據(jù),查詢、更新管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。嵌入到Java代碼中實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作。1.7android技術(shù)簡(jiǎn)介Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),主要使用于移動(dòng)設(shè)備。Android構(gòu)建在Linux內(nèi)核上,利用linux完成其內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)和其他操作系統(tǒng)服務(wù)工作。linux內(nèi)核層上面的一層中包含了Android的本機(jī)庫(kù)。這些共享庫(kù)都是用C或C++語(yǔ)言編譯的,并且針對(duì)電話使用的特定硬件架構(gòu)進(jìn)行了編譯,并已由手機(jī)制造商預(yù)先安裝到手機(jī)中。1.8IOS技術(shù)簡(jiǎn)介IOS用的開發(fā)語(yǔ)言是Object-C開發(fā)工具是X-Code操作系統(tǒng)是Mac

Object-C:本來(lái)是沒(méi)有垃圾回收機(jī)制的語(yǔ)言,也就是要讓程序員來(lái)控制申請(qǐng)和釋放內(nèi)存的。但是蘋果做了很多的工作。現(xiàn)在有個(gè)叫做ARC的技術(shù)能夠讓程序員寫的程序幾乎不用去管理內(nèi)存了。跟JAVA,CSharp那些一樣了。所以如果只是做一般的APP開發(fā)很容易學(xué)懂和上手。也有很多先進(jìn)的技術(shù)比如動(dòng)態(tài)擴(kuò)展類了(跟JS的prototype一樣),block(匿名函數(shù),讓異步操作更簡(jiǎn)單)

開發(fā)框架:真?zhèn)€平臺(tái)對(duì)MCV做的已經(jīng)很完善了,所以貌似沒(méi)有什么很有名的開發(fā)框架。但是各種庫(kù)很多。

X-Code:一個(gè)集成的開發(fā)環(huán)境。里面包含了界面設(shè)計(jì),代碼編寫,編譯,運(yùn)行,事件綁定,在設(shè)備上運(yùn)行APP,簽名,發(fā)布APP到蘋果商店。都是很容易使用。2需求分析與系統(tǒng)設(shè)計(jì)2.1需求分析2.1.1功能需求功能需求分析是整個(gè)軟件工程中的一個(gè)最關(guān)鍵的過(guò)程。主要任務(wù)是根據(jù)用戶需求和運(yùn)行條件,確定系統(tǒng)將實(shí)現(xiàn)的功能。經(jīng)過(guò)需求分析,本系統(tǒng)由客戶端,后臺(tái)和服務(wù)器三部分組成。由服務(wù)器為客戶端提供統(tǒng)一的接口,數(shù)據(jù)由服務(wù)器統(tǒng)一下發(fā),由客戶端顯示。后臺(tái)來(lái)協(xié)調(diào)整個(gè)系統(tǒng)平衡。三個(gè)不封分工明確,共同完成本系統(tǒng)的業(yè)務(wù)流程。具體需求如下:客戶端:(1)用戶注冊(cè)、登錄、修改個(gè)人信息;(2)查看論壇列表,分類查看,查看帖子詳情,查看帖子評(píng)論列表;(3)對(duì)某帖子評(píng)論;(4)發(fā)表帖子。后臺(tái):(1)添加分類,查看分類信息,管理分類信息(修改、刪除);(2)查看某段時(shí)間內(nèi)接口成功響應(yīng)耗時(shí),以及多個(gè)接口耗時(shí)對(duì)比圖;(3)查看各個(gè)分類下的詳細(xì)數(shù)據(jù)信息。服務(wù)器:規(guī)定所有接口數(shù)據(jù)的下發(fā)。訪問(wèn)數(shù)據(jù)壓力。必要時(shí)用緩存來(lái)分擔(dān)數(shù)據(jù)庫(kù)壓力。2.1.2性能需求(1)系統(tǒng)安全性:業(yè)務(wù)邏輯不對(duì)外暴露,保證系統(tǒng)安全。(2)系統(tǒng)穩(wěn)定性:保證系統(tǒng)運(yùn)行穩(wěn)定,對(duì)可能出現(xiàn)的異常加以處理。(3)界面友好性:提供簡(jiǎn)易實(shí)用的用戶界面。(4)數(shù)據(jù)安全性:用戶身份驗(yàn)證,管理員后臺(tái)管理數(shù)據(jù)庫(kù),保證數(shù)據(jù)安全。2.1.3開發(fā)環(huán)境(1)操作系統(tǒng):MicrosoftWindows7,Android(2)服務(wù)器:Apache-Tomcat-6.0.32(3)數(shù)據(jù)庫(kù):MySQL(4)數(shù)據(jù)庫(kù)設(shè)計(jì):NavicatforMySQL(5)開發(fā)軟件:MyEclipse10jdk1.6,androidsdk,adt(6)瀏覽器:google瀏覽器2.1.4運(yùn)行環(huán)境本系統(tǒng)的運(yùn)行主要分三個(gè)部分,客戶端目前只開發(fā)了android版本,ios版本做可擴(kuò)展考慮;服務(wù)器運(yùn)行在tomcat下,tomcat可以運(yùn)行在windows下也可以運(yùn)行在linux,后臺(tái)數(shù)據(jù)管理系統(tǒng)運(yùn)行在windows系統(tǒng)下。服務(wù)器端跨平臺(tái)性很強(qiáng)。2.2基本設(shè)計(jì)原則(1)系統(tǒng)必須具備可靠性。保證用戶數(shù)據(jù)的正確性和實(shí)時(shí)性。建立與用戶之間良好的信賴關(guān)系,是軟件的生存之道。(2)系統(tǒng)必須具備健壯性。系統(tǒng)必須能夠判斷輸入信息是否符合規(guī)范要求。對(duì)于敏感詞和不良詞匯不可出現(xiàn)在論壇中。(3)系統(tǒng)必須具備可測(cè)試性。系統(tǒng)必須能經(jīng)過(guò)輸入數(shù)據(jù)的測(cè)試,保證系統(tǒng)得到全面的檢驗(yàn)。(4)系統(tǒng)必須具備可擴(kuò)展性。 在系統(tǒng)需要變更業(yè)務(wù)規(guī)則或更新功能時(shí)候,通過(guò)升級(jí)接口來(lái)實(shí)現(xiàn)。接口升級(jí)兼容客戶端的各個(gè)版本。整個(gè)系統(tǒng)具有良好的可擴(kuò)展性。2.3業(yè)務(wù)流程設(shè)計(jì)2.3.1客戶端業(yè)務(wù)流程設(shè)計(jì)客戶端主要完成用戶注冊(cè)、登錄、查看帖子信息和發(fā)布信息的工作:用戶身份驗(yàn)證:注冊(cè)會(huì)員,已注冊(cè)的用戶可以登錄和切換用戶;登錄用戶可以查看個(gè)人信息,修改個(gè)人資料。(3)登錄用戶可以查看論壇中帖子信息,并進(jìn)行互動(dòng)。(4)登錄用戶可以發(fā)布信息??蛻舳藰I(yè)務(wù)流程如圖:圖2-1客戶端業(yè)務(wù)流程圖2.3.2后臺(tái)業(yè)務(wù)流程設(shè)計(jì)后臺(tái)幫助管理員完成對(duì)整個(gè)系統(tǒng)的管理工作:(1)分類管理:添加分類信息,查看分類信息,修改、刪除分類信息;(2)對(duì)所有的帖子都有管理權(quán)限,有所有帖子和評(píng)論的刪除權(quán)限;(3)監(jiān)控各個(gè)接口的運(yùn)行情況;后臺(tái)業(yè)務(wù)流程圖:圖2-2后臺(tái)業(yè)務(wù)流程圖2.4數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)在整個(gè)系統(tǒng)中處于非常重要的位置,所有的功能脫離了數(shù)據(jù)庫(kù)都無(wú)法實(shí)現(xiàn),數(shù)據(jù)庫(kù)的好壞直接決定著系統(tǒng)的數(shù)據(jù)安全和運(yùn)行效率。根據(jù)功能需求,支持系統(tǒng)運(yùn)行的數(shù)據(jù)庫(kù)需要滿足如下特點(diǎn):(1)由于需要用戶注冊(cè)和登錄,所以需要一個(gè)用戶表用來(lái)存儲(chǔ)會(huì)員信息;(2)帖子是論壇中的主題,所以需要一個(gè)帖子表來(lái)存儲(chǔ)帖子信息;(3)評(píng)論依附帖子存在,是用戶互動(dòng)的關(guān)鍵,所以需要一個(gè)表來(lái)存儲(chǔ)評(píng)論;2.4.1概念數(shù)據(jù)模型設(shè)計(jì)經(jīng)過(guò)分析得出E-R圖(實(shí)體-關(guān)系圖)如下:圖2-3概念數(shù)據(jù)模型設(shè)計(jì)E=R圖2.4.2邏輯數(shù)據(jù)模型設(shè)計(jì)將E-R圖轉(zhuǎn)化為關(guān)系數(shù)據(jù)模式:用戶(用戶id,用戶名,密碼,電話,手機(jī),地址,E-mail,性別,帖子數(shù));帖子表(帖子id,fid,作者id,帖子title,帖子content,日期,狀態(tài),評(píng)論數(shù));評(píng)論表(評(píng)論id,帖子id,作者id,評(píng)論內(nèi)容,評(píng)論時(shí)間,評(píng)論狀態(tài));2.4.3物理數(shù)據(jù)模型設(shè)計(jì)在NavicatForMySQL軟件中設(shè)計(jì)物理數(shù)據(jù)模型:圖2-4物理數(shù)據(jù)模型設(shè)計(jì)2.5系統(tǒng)結(jié)構(gòu)設(shè)計(jì)2.5.1頁(yè)面結(jié)構(gòu)設(shè)計(jì)后臺(tái)分三部分:上部,左部,主體部分。(1)上部顯示后臺(tái)主頁(yè)標(biāo)題(2)左部顯示管理員可做的操作,例如添加、查看分類,查看數(shù)據(jù)等。(3)主體部分顯示管理員點(diǎn)擊左部以后回饋的頁(yè)面,例如顯示分類,并可刪除、修改分類,顯示數(shù)據(jù),顯示接口詳細(xì)信息等。2.5.2代碼結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)采用服務(wù)器客戶端架構(gòu),服務(wù)器端采用SSH三大框架??蛻舳素?fù)責(zé)顯示數(shù)據(jù)。服務(wù)器端action層主要負(fù)責(zé)客服端的跳轉(zhuǎn),指向正確的業(yè)務(wù)層。服務(wù)器端業(yè)務(wù)邏輯層Service層,主要處理系統(tǒng)的業(yè)務(wù)邏輯,并使表示層與數(shù)據(jù)訪問(wèn)層分離。數(shù)據(jù)訪問(wèn)層指的是DAO層,該層主要完成對(duì)象-關(guān)系映射的建立,通過(guò)這個(gè)映射和訪問(wèn)業(yè)務(wù)對(duì)象即可實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),提高了開發(fā)效率。數(shù)據(jù)層指數(shù)據(jù)庫(kù)。代碼結(jié)構(gòu)示意圖如下:圖2-5代碼結(jié)構(gòu)示意圖代碼執(zhí)行流程說(shuō)明:客戶端發(fā)出base64加密的請(qǐng)求,服務(wù)器接受到請(qǐng)求后,先做base64解密操作,解密成功后交給對(duì)應(yīng)action處理,action調(diào)用對(duì)應(yīng)的業(yè)務(wù)層(service),業(yè)務(wù)層調(diào)用相應(yīng)的數(shù)據(jù)層(dao)來(lái)保存和讀取數(shù)據(jù)。整個(gè)框架中只有dao層讀寫數(shù)據(jù)庫(kù)的權(quán)限。這樣層次分明的處理數(shù)據(jù),這樣做不僅高效,而且程序的可讀性很強(qiáng)。如此將代碼分層,各層的分工明確,降低了各個(gè)模塊間的耦合性,使系統(tǒng)便于維護(hù)和升級(jí)。3系統(tǒng)詳細(xì)設(shè)計(jì)3.1數(shù)據(jù)庫(kù)實(shí)現(xiàn)在4.2節(jié)中已經(jīng)對(duì)數(shù)據(jù)庫(kù)做出了設(shè)計(jì),只需根據(jù)設(shè)計(jì)實(shí)現(xiàn)數(shù)據(jù)庫(kù)。進(jìn)入cmd,輸入mysql–uroot–p敲回車后輸入密碼,進(jìn)入到MySQLmonitor下,如圖:圖3-1建立數(shù)據(jù)庫(kù)在光標(biāo)處輸入代碼建立數(shù)據(jù)庫(kù)。具體代碼參見(jiàn)附錄A。3.2服務(wù)器設(shè)計(jì)集成SSH框架的系統(tǒng)從職責(zé)上分為四層:表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層和域模塊層,以幫助開發(fā)人員在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的Web應(yīng)用程序。其中使用Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)MVC的分離,在Struts框架的模型部分,控制業(yè)務(wù)跳轉(zhuǎn),利用Hibernate框架對(duì)持久層提供支持,Spring做管理,管理struts和hibernate。具體做法是:用面向?qū)ο蟮姆治龇椒ǜ鶕?jù)需求提出一些模型,將這些模型實(shí)現(xiàn)為基本的Java對(duì)象,然后編寫基本的DAO(DataAccessObjects)接口,并給出Hibernate的DAO實(shí)現(xiàn),采用Hibernate架構(gòu)實(shí)現(xiàn)的DAO類來(lái)實(shí)現(xiàn)Java類與數(shù)據(jù)庫(kù)之間的轉(zhuǎn)換和訪問(wèn),最后由Spring做管理,管理struts和hibernate。3.2.1服務(wù)器端工具工具和過(guò)濾器:(1)處理中文編碼的過(guò)濾器。默認(rèn)使用UTF-8。(2)對(duì)所有請(qǐng)求url進(jìn)行base64解密的過(guò)濾器。(3)base64解密工具。(4)MD5加密工具3.2.2軟件包和JAVA源代碼文件圖3-2服務(wù)器源碼結(jié)構(gòu)圖3-2服務(wù)器源碼結(jié)構(gòu)引入spring,struts,hibernate相關(guān)的jar包,打印日志的jar,本項(xiàng)目中使用log4g。源碼在src文件下?,F(xiàn)在大致分為7層,為:action,service,service.impl,dao,dao.impl,entity,util七層??紤]service層在不同客服端的業(yè)務(wù)邏輯的區(qū)別,將service的實(shí)現(xiàn)分層處理;考慮變更數(shù)據(jù)庫(kù)的考慮,將dao層的實(shí)現(xiàn)獨(dú)立開。這樣系統(tǒng)的升級(jí)和改版就比較輕松,不在依附原來(lái)的設(shè)計(jì)。實(shí)現(xiàn)代碼如圖所示:3.2.3服務(wù)器的整體架構(gòu)服務(wù)器整體才用SSH架構(gòu),保證各個(gè)層之間清晰分工。將數(shù)據(jù)源,定時(shí)任務(wù)等寫在配置文件beans.xml中,并且可以配置多一個(gè)數(shù)據(jù)源,也可以將讀寫數(shù)據(jù)源分開,減小數(shù)據(jù)庫(kù)的壓力。對(duì)于一個(gè)壓力比較大的表,可以采用緩存處理,比如memcached,beans.xml中還包含了事務(wù)處理的配置,以及對(duì)項(xiàng)目中試題加載的路徑。Action路徑的配置及返回?cái)?shù)據(jù)的路徑配置在struts.xml文件中。對(duì)于本項(xiàng)目,正確的返回路徑都是json.jsp,json.jsp頁(yè)面中輸出程序返回的結(jié)果;出現(xiàn)異常的訪問(wèn),返回error.jsp,error頁(yè)面輸出錯(cuò)誤原因。這是服務(wù)器端最重要的兩個(gè)配置文件,如圖:圖3-3服務(wù)器beans.xml圖3-4服務(wù)器struts.xml3.2.4服務(wù)器對(duì)外交互分析為了增加服務(wù)器的安全性,對(duì)于所用來(lái)訪問(wèn)的url做解密處理,對(duì)于解密失敗的url不做處理,一方面減小了服務(wù)器的壓力,另一方面增加了服務(wù)器的安全性。合法url的訪問(wèn)返回json數(shù)據(jù),json是一種輕量級(jí)的數(shù)據(jù)交換格式。json簡(jiǎn)單說(shuō)就是javascript中的對(duì)象和數(shù)組,所以這兩種結(jié)構(gòu)就是對(duì)象和數(shù)組2種結(jié)構(gòu),通過(guò)這兩種結(jié)構(gòu)可以表示各種復(fù)雜的結(jié)構(gòu):(1)對(duì)象:對(duì)象在js中表示為“{}”擴(kuò)起來(lái)的內(nèi)容,數(shù)據(jù)結(jié)構(gòu)為{key:value,key:value,...}的鍵值對(duì)的結(jié)構(gòu),在面向?qū)ο蟮恼Z(yǔ)言中,key為對(duì)象的屬性,value為對(duì)應(yīng)的屬性值,所以很容易理解,取值方法為對(duì)象.key獲取屬性值,這個(gè)屬性值的類型可以是數(shù)字、字符串、數(shù)組、對(duì)象幾種。(2)數(shù)組:數(shù)組在js中是中括號(hào)“[]”擴(kuò)起來(lái)的內(nèi)容,數(shù)據(jù)結(jié)構(gòu)為["java","javascript","vb",...],取值方式和所有語(yǔ)言中一樣,使用索引獲取,字段值的類型可以是數(shù)字、字符串、數(shù)組、對(duì)象幾種。3.3客戶端設(shè)計(jì)3.3.1頁(yè)面布局處理Android項(xiàng)目中res目錄中存放資源文件,其中l(wèi)ayout中存放了所有的頁(yè)面,他們是一系列的xml文件,drawable-xxx目錄中存放了圖片資源。Xml文件的每一個(gè)控件在gen中的R.java文件的中都有對(duì)應(yīng)的資源。圖3-5客戶端頁(yè)面布局對(duì)于項(xiàng)目中用到的中文字符串,都應(yīng)該放在values文件中,作為資源來(lái)訪問(wèn)。頁(yè)面處理中最重要的控件在頁(yè)面中的布局和定位,還需要適配不同大小的屏幕。難度比較大,鑒于本系統(tǒng)開發(fā)時(shí)間和本人能力有限,只是適配了小米1S的屏幕,其他屏幕沒(méi)有做適配。3.3.2客戶端源碼結(jié)構(gòu)上面接受了android項(xiàng)目中的res文件的結(jié)構(gòu),下面講一下項(xiàng)目中的清單文件,也是控制整個(gè)項(xiàng)目的配置文件AndroidManifest.xml,其結(jié)構(gòu)如圖:圖3-6客戶端AndroidManifest.xml程序源碼放在src文件下:圖3-7客戶端源碼結(jié)構(gòu)Activity包中是頁(yè)面的初始化,每一個(gè)頁(yè)面中都一個(gè)oncreate方法,當(dāng)頁(yè)面加載時(shí),都會(huì)調(diào)用ocreate方法,初始化頁(yè)面中的各個(gè)控件。3.5后臺(tái)設(shè)計(jì)3.5.1JSP文件結(jié)構(gòu) JSP文件放在工程根目錄下的WebRoot文件中jsp文件夾中,公用的jsp文件放在WebRoot根目錄下。目錄結(jié)構(gòu)與服務(wù)器后臺(tái)大同,此處不在貼出圖片。 圖片放置在WebRoot中的image文件夾下。3.5.2JSTL JSTL(JSP標(biāo)準(zhǔn)標(biāo)記庫(kù))是一個(gè)實(shí)現(xiàn)Web應(yīng)用程序中常見(jiàn)的通用功能的定制標(biāo)記庫(kù)集,這些功能包括迭代和條件判斷、數(shù)據(jù)管理格式化、XML操作以及數(shù)據(jù)庫(kù)訪問(wèn)。本系統(tǒng)大量用到EL表達(dá)式和循環(huán)控制標(biāo)簽。EL語(yǔ)言JSTL輸入(輸出)一個(gè)JAVA表達(dá)式的表示形式。在JSTL語(yǔ)言中,EL語(yǔ)言在JSTL屬性值中使用。EL語(yǔ)言只能通過(guò)建立表達(dá)式${expression}來(lái)進(jìn)行調(diào)用。 (2)循環(huán)控制標(biāo)簽 用循環(huán)控制標(biāo)簽來(lái)實(shí)現(xiàn)在JSP頁(yè)面的循環(huán)。例如后臺(tái)管理顯示圖書清單的JSP頁(yè)面中,需要把圖書信息一條一條地顯示出來(lái),就用到了循環(huán)控制標(biāo)簽。被<c:forEach>標(biāo)簽包圍的部分代碼執(zhí)行循環(huán)。<c:forEach>用到了items,begin,end等屬性。Items表示進(jìn)行循環(huán)的項(xiàng)目;begin表示開始條件;end表示結(jié)束條件。循環(huán)部分代碼見(jiàn)下圖:圖3-8循環(huán)控制標(biāo)簽的使用jQueryjQuery是免費(fèi)、開源的,使用MIT許可協(xié)議。jQuery的語(yǔ)法設(shè)計(jì)可以使開發(fā)者更加便捷,例如操作文檔對(duì)象、選擇DOM元素、制作動(dòng)畫效果、事件處理、使用Ajax以及其他功能。除此以外,jQuery提供API讓開發(fā)者編寫插件。其模塊化的使用方式使開發(fā)者可以很輕松的開發(fā)出功能強(qiáng)大的靜態(tài)或動(dòng)態(tài)網(wǎng)頁(yè)。

4頁(yè)面展示4.1客戶端頁(yè)面展示(1)首頁(yè)展示:用戶必須憑借在系統(tǒng)中申請(qǐng)的賬號(hào)和密碼才能進(jìn)入系統(tǒng)。圖4-1登錄頁(yè)面注冊(cè)信息填寫:如果用戶沒(méi)有賬號(hào),點(diǎn)擊注冊(cè)按鈕進(jìn)入注冊(cè)頁(yè)面。填寫注冊(cè)信息以便完成注冊(cè)。注冊(cè)如圖4-2。圖4-2注冊(cè)頁(yè)面圖4-2注冊(cè)頁(yè)面進(jìn)入大學(xué)生論壇頁(yè)面:頁(yè)面中首先展示的是論壇中的最新討論主頁(yè)的簡(jiǎn)表。進(jìn)入進(jìn)入論壇主頁(yè)以后又有新的主題更,需要手動(dòng)點(diǎn)擊刷新按鈕重新獲取數(shù)據(jù)才能看到。對(duì)于論壇中的信息也可以分類查看。如圖4-3。圖4-3論壇主頁(yè)面4.2主頁(yè)面展示論壇主頁(yè)頁(yè)面按鈕:在論壇頁(yè)面點(diǎn)擊菜單鍵,進(jìn)入到下面的頁(yè)面。如圖圖4-4后臺(tái)首頁(yè)圖4-4后臺(tái)首頁(yè)(2)發(fā)布信息:在圖5-4中點(diǎn)擊發(fā)布信息,進(jìn)入發(fā)布信息頁(yè)面。輸入合法的發(fā)布的信息,點(diǎn)擊發(fā)布按鈕。就能在論壇中發(fā)布信息。圖4-5發(fā)布信息 (3)個(gè)人主頁(yè)頁(yè)面:在圖5-4中點(diǎn)擊個(gè)人主頁(yè)按鈕,進(jìn)入個(gè)人主頁(yè)頁(yè)面。查看自己的信息,也可以由此頁(yè)面跳轉(zhuǎn)到修改個(gè)人資料的頁(yè)面。在個(gè)人主頁(yè)頁(yè)面主要呈現(xiàn)給用昵稱,性別,郵箱,討論數(shù),并且頁(yè)面下方有發(fā)表主題的簡(jiǎn)表。用戶可以點(diǎn)擊簡(jiǎn)表的元素查看主題的詳細(xì)信息。圖4-6個(gè)人主頁(yè) (4)帖子詳細(xì)頁(yè)面: 點(diǎn)擊上圖中的我的發(fā)表列表中的主體,進(jìn)入到帖子詳細(xì)頁(yè)面。如圖4-7:圖4-7帖子詳細(xì)在這個(gè)頁(yè)面中可以于帖子互動(dòng),在編輯框中輸入內(nèi)容,點(diǎn)擊發(fā)送按鈕。與其他用戶互動(dòng)。點(diǎn)擊評(píng)論列表,查看此貼下的評(píng)論信息。圖4-8評(píng)論列表4.3后臺(tái)數(shù)據(jù)控制頁(yè)面 --在系統(tǒng)測(cè)中,論壇中的分類只有管理員才能添加或刪除。在軟件的運(yùn)維中,需要統(tǒng)計(jì)查看各分類的數(shù)據(jù),查看那些關(guān)鍵詞的主體比較集中,查看服務(wù)器各個(gè)接口的成功響應(yīng)耗時(shí)情況等等。這些統(tǒng)計(jì)功能都放在后臺(tái)數(shù)據(jù)控制系統(tǒng)。由于時(shí)間限制,后臺(tái)只是開發(fā)了部分功能。其他功能還有待開發(fā)。(1)登陸,管理員必須憑借匹配的用戶名密碼才能進(jìn)入后臺(tái)管理系統(tǒng)。此用戶名密碼區(qū)別于論壇系統(tǒng)中的用戶。如下圖:圖4-9后臺(tái)登錄信息驗(yàn)證管理分類信息,(查看分類信息,添加,刪除)頁(yè)面上部是一級(jí)菜單,點(diǎn)擊分組管理,頁(yè)面左部出現(xiàn)二級(jí)菜單,點(diǎn)擊查看分組,可以看到分組詳情,并且可以在這個(gè)頁(yè)面中對(duì)分組管理,如圖4-10。點(diǎn)擊二級(jí)菜單中的添加分組,可以看到4-10頁(yè)面,在此頁(yè)面中可以添加分組。圖4-10后臺(tái)查看、刪除分組信息圖4-11后臺(tái)添加分組信息

總結(jié) 本設(shè)計(jì)選題為大學(xué)生論壇安卓客戶端的設(shè)計(jì)與實(shí)現(xiàn)。作為一個(gè)C/S的系統(tǒng),具有當(dāng)前市場(chǎng)上大部分C/S系統(tǒng)的普遍特性。開發(fā)一款軟件最重要的是需求明確。為此,我在2012年的暑假期間,初步研究了discuz這款已經(jīng)成熟的產(chǎn)品。大四期間又學(xué)習(xí)了java方向的服務(wù)器開發(fā),了解了java開發(fā)中的三大框架。所以我選擇了將discuz這個(gè)論壇模式用java后臺(tái)模擬,再用手機(jī)客戶端呈現(xiàn)給用戶。到現(xiàn)在為止,我還覺(jué)得本系統(tǒng)中有些設(shè)計(jì)不太合理,比如客戶端方面一些滑動(dòng)效果的設(shè)計(jì)沒(méi)能實(shí)現(xiàn),服務(wù)器端某些接口定義的不規(guī)范等等。 本系統(tǒng)是一個(gè)在MyEclipse10,tomcat,mysql,jdk1.6,eclipse_android環(huán)境下使用JAVA語(yǔ)言開發(fā)的。這是我在大學(xué)期間設(shè)計(jì)的第一個(gè)比較完整的系統(tǒng),包含了從服務(wù)器到客戶端再到后臺(tái)數(shù)據(jù)統(tǒng)計(jì)和后臺(tái)控制,從到業(yè)務(wù)層和數(shù)據(jù)庫(kù)的設(shè)計(jì)和實(shí)現(xiàn)。本設(shè)計(jì)重點(diǎn)主要偏重于代碼部分的設(shè)計(jì)和編寫,遵循C/S結(jié)構(gòu)的基本原則,將計(jì)算機(jī)應(yīng)用任務(wù)分解成多個(gè)子任務(wù),由多臺(tái)計(jì)算機(jī)分工完成,即采用“功能分布”原則??蛻舳送瓿蓴?shù)據(jù)處理,數(shù)據(jù)表示以及用戶接口功能;服務(wù)器端完成DBMS的核心功能。在開發(fā)階段的后期,實(shí)現(xiàn)了最初設(shè)計(jì)的基本功能的基礎(chǔ)上,又對(duì)系統(tǒng)可能出現(xiàn)的問(wèn)題和錯(cuò)誤進(jìn)行了排查和解決,保證了系統(tǒng)運(yùn)行的穩(wěn)定性。由于在需求分析期間,沒(méi)有充分考慮到客戶端的UI設(shè)計(jì),導(dǎo)致客戶端設(shè)計(jì)不合理。在實(shí)現(xiàn)在也遇到了一些沒(méi)有考慮到的困難??蛻舳说膌ogo也設(shè)計(jì)的比較粗糙。軟件的整體背景也是借鑒于我以前開發(fā)的一款軟件。這些都是因?yàn)槲覜](méi)有美工基礎(chǔ),且時(shí)間比較緊迫。最后只好采取一種妥協(xié)的方式,網(wǎng)上找了些圖片P了一下。服務(wù)器方面由于沒(méi)有自己的服務(wù)器,所以只能將服務(wù)器代碼部署在本地,這就要求部署代碼的電腦和手機(jī)在同一個(gè)網(wǎng)絡(luò)下,這需要借助一個(gè)無(wú)線路由器。這也使得調(diào)試工作變的繁瑣和限制。整體上來(lái)講,服務(wù)器的接口定義的還比較合理,但是由于我在安卓方面的技術(shù)欠缺,有些功能還未來(lái)得及實(shí)現(xiàn),比如修改個(gè)人資料的頁(yè)面就沒(méi)有來(lái)得及做。對(duì)于整個(gè)系統(tǒng)的開發(fā)和工作協(xié)調(diào),我想在我以后的工作中一定是一筆不可估量的財(cái)富。 畢業(yè)設(shè)計(jì)是大學(xué)學(xué)習(xí)的一個(gè)總結(jié),是一個(gè)學(xué)生真實(shí)知識(shí)水平的試金石。在做畢業(yè)設(shè)計(jì)的這段時(shí)間里,我力求完美的完成它,雖然仍有些許遺憾和不足之處,但我依然從中學(xué)到了許多。希望這次設(shè)計(jì)能為我的本科學(xué)習(xí)和生活畫上完美的句號(hào)。參考文獻(xiàn)[1]張孝祥,徐明華叢書主編,邱加永等編著,JSP基礎(chǔ)與案例開發(fā)詳解(軟件開發(fā)課堂),北京:清華大學(xué)出版社,2009,8[2](美)昂納日托,JSP速成教程,北京,機(jī)械工業(yè)出版社,2002年[3]唐振明編,JavaEE架構(gòu)與程序設(shè)計(jì),北京:電子工業(yè)出版社2011年10月[4]郭宏志著,Android應(yīng)用開發(fā)詳解,電子工業(yè)出版社[5]湯鳴紅編,JavaWeb應(yīng)用開發(fā),北京:化學(xué)工業(yè)出版社2009年7月[6]陳亞輝編,Struts2+Spring+Hibernate框架技術(shù)與項(xiàng)目實(shí)戰(zhàn),清華大學(xué)出版社[7]李剛編,輕量級(jí)JavaEE企業(yè)應(yīng)用實(shí)戰(zhàn)(第3版),電子工業(yè)出版社[8]JocyGeogre,DineshBatra,JosephValacich,JeffreyHoffer著龔曉慶等譯,面向?qū)ο蠓治雠c設(shè)計(jì),北京:清華大學(xué)出版社2008年1月[9]BaronSchwartz,PeterZaitsev,VadimTkachenko,JeremyD.Zawodny,ArjenLent,DerekJ.Ballin,高性能MySQL,電子工業(yè)出版社

致謝四年的大學(xué)生活匆匆,我們的校園生活就要走到盡頭,心中是無(wú)盡的難舍與眷戀。這四年是我們?nèi)松兄匾乃哪?,也為我們的社?huì)實(shí)踐做了一個(gè)堅(jiān)實(shí)的鋪墊。自此,我們要奮斗在這個(gè)自由的環(huán)境中了。回首四年,取得了些許成績(jī),生活中有快樂(lè)也有艱辛。感謝老師四年來(lái)對(duì)我孜孜不倦的教誨,對(duì)我成長(zhǎng)的關(guān)心和愛(ài)護(hù)。同窗情深,情同兄妹。四年的美好時(shí)光,我們一同走過(guò),充滿著友愛(ài),給我的人生留下美好的一筆。我要特別的感謝我的父母。在我的十幾年求學(xué)歷程里,是他們默默的鼓勵(lì)和支持,用辛勤勞作的雙手,為我無(wú)私的付出,為我創(chuàng)造可能的學(xué)習(xí)條件,我才能順利完成學(xué)業(yè),感激他們一直以來(lái)對(duì)我的撫養(yǎng)與培育。最后,我要特別感謝我的指導(dǎo)老師王克儉教授。是她在我畢業(yè)的最后關(guān)頭給了我們巨大的幫助與鼓勵(lì),使我能夠順利完成畢業(yè)設(shè)計(jì),在此表示衷心的感激。王老師認(rèn)真負(fù)責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我收益匪淺。她無(wú)論在理論上還是在實(shí)踐中,都給與我很大的幫助,使我得到不少的提高這對(duì)于我以后的工作和學(xué)習(xí)都有一種巨大的幫助,感謝她耐心的輔導(dǎo)。在系統(tǒng)開發(fā)過(guò)程中王老師也給予我很大的幫助,幫助我解決了很多難點(diǎn),指導(dǎo)我的系統(tǒng)開發(fā)完成,在此特別感謝王老師。附錄--數(shù)據(jù)庫(kù):`conf_safe`--表的結(jié)構(gòu)`back_cs_user`DROPTABLEIFEXISTS`back_cs_user`;CREATETABLEIFNOTEXISTS`back_cs_user`(`userid`int(11)NOTNULLAUTO_INCREMENT,`username`varchar(40)DEFAULTNULL,`password`varchar(40)DEFAULTNULL,`level`int(5)DEFAULTNULL,PRIMARYKEY(`userid`))ENGINE=InnoDBDEFAULTCHARSET=utf8AUTO_INCREMENT=2;--表的結(jié)構(gòu)`cs_attachment`DROPTABLEIFEXISTS`cs_attachment`;CREATETABLEIFNOTEXISTS`cs_attachment`(`aid`int(11)unsignedNOTNULLAUTO_INCREMENT,`rid`int(11)DEFAULTNULLCOMMENT'帖子或評(píng)論id',`img_url`varchar(100)DEFAULTNULL,`filesize`int(10)DEFAULTNULL,`type`int(2)DEFAULTNULLCOMMENT'1:帖子2:評(píng)論',PRIMARYKEY(`aid`))ENGINE=InnoDBDEFAULTCHARSET=utf8AUTO_INCREMENT=1;--表的結(jié)構(gòu)`cs_comment`DROPTABLEIFEXISTS`cs_comment`;CREATETABLEIFNOTEXISTS`cs_comment`(`cid`int(11)unsignedNOTNULLAUTO_INCREMENT,`pid`int(11)DEFAULTNULL,`uid`int(11)DEFAULTNULL,`content`varchar(200)DEFAULTNULL,`dateline`datetimeDEFAULTNULL,`state`int(1)DEFAULTNULL,`attachment`int(2)DEFAULTNULL,PRIMARYKEY(`cid`))ENGINE=InnoDBDEFAU

溫馨提示

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

評(píng)論

0/150

提交評(píng)論