版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
畢業(yè)設(shè)計(jì)說(shuō)明書(shū)基于Struts技術(shù)的文章管理系統(tǒng)學(xué)生姓名:學(xué)號(hào):學(xué)院:系名:電子與計(jì)算機(jī)科學(xué)技術(shù)系專(zhuān)業(yè):網(wǎng)絡(luò)工程指導(dǎo)教師: 2015年5月基于Struts技術(shù)的文章管理系統(tǒng)摘要近年來(lái),Internet技術(shù)得到迅速的發(fā)展,已經(jīng)成為計(jì)算機(jī)產(chǎn)業(yè)的一個(gè)技術(shù)熱點(diǎn)。促成Internet高速發(fā)展的因素之一就是Web技術(shù)。Web技術(shù)的發(fā)展使得那些具有交互動(dòng)態(tài)頁(yè)面、有條理的數(shù)據(jù)庫(kù)查詢(xún)、豐富信息內(nèi)容的頁(yè)面成為最吸引人的網(wǎng)頁(yè)。瀏覽Web有著執(zhí)行Windows程序一樣的感覺(jué)和操作性。隨著Internet技術(shù)的發(fā)展,它已經(jīng)成為一種操作平臺(tái),為用戶(hù)提供強(qiáng)大的服務(wù),例如網(wǎng)上購(gòu)物,網(wǎng)上電子商務(wù),社會(huì)信息數(shù)據(jù)庫(kù)服務(wù)等。作為計(jì)算機(jī)發(fā)展最迅速的領(lǐng)域之一的數(shù)據(jù)庫(kù)技術(shù),已經(jīng)形成了一整套獨(dú)有的理論,并廣泛地應(yīng)用于人們的生產(chǎn)和生活中。數(shù)據(jù)庫(kù)技術(shù)與網(wǎng)站的結(jié)合是當(dāng)今Web技術(shù)的一個(gè)熱點(diǎn)。有了數(shù)據(jù)庫(kù)的支持,可以擴(kuò)展網(wǎng)頁(yè)的功能,可以方便地設(shè)計(jì)出交互式頁(yè)面,可以構(gòu)造功能強(qiáng)大的后臺(tái)管理系統(tǒng),可以為網(wǎng)站的更新、維護(hù)提供極大的方便。因此,作為網(wǎng)絡(luò)開(kāi)發(fā)者或管理者,數(shù)據(jù)庫(kù)知識(shí)是必不可少的。本論文首先介紹了文章管理類(lèi)網(wǎng)站的現(xiàn)狀和JSP、Sturts等JavaWeb的相關(guān)技術(shù),用面向?qū)ο蟮腗VC設(shè)計(jì)思想對(duì)文章管理系統(tǒng)進(jìn)行系統(tǒng)需求分析、可行性研究。第一章為緒論,介紹國(guó)內(nèi)外背景及現(xiàn)狀等;第二章是需求分析,從系統(tǒng)目標(biāo),功能,性能,系統(tǒng)運(yùn)行環(huán)境等方面闡述;第三章為系統(tǒng)設(shè)計(jì),介紹前后臺(tái)的數(shù)據(jù)庫(kù)設(shè)計(jì),各個(gè)模塊的設(shè)計(jì)等;第四章為系統(tǒng)實(shí)現(xiàn),具體介紹各個(gè)功能模塊的實(shí)現(xiàn);第五章為結(jié)論。關(guān)鍵字:jsp,Mysql,文章管理系統(tǒng),SturtsNewswebsiteAbstractInrecentyears,Internettechnologyhasbeenrapiddevelopment,hasbecomeahottechnologyinthecomputerindustry.OneofthefactorsthatcontributedtotherapiddevelopmentofthetechnologyofWebisInternet.ThedevelopmentofWebtechnologymakestheinteractivedynamicpages,organizeddatabasequery,contentrichpagesbecomethemostattractiveWebpage.BrowsetheWebwiththeimplementationofWindowsprogramslikethefeelandmaneuverability.WiththedevelopmentofInternettechnology,ithasbecomeaplatform,foruserstoprovidepowerfulservices,suchasonlineshopping,onlinecommerce,socialinformationdatabaseservicesetc..Asoneofthemostrapidlydevelopingfieldsofcomputerdatabasetechnology,andhasformedasetofuniquetheory,andwidelyusedinpeople'sproductionandlife.ThecombinationofdatabasetechnologyandwebsiteisahottopicincurrentWebtechnology.Withthesupportofthedatabase,canbeextendedWebpagefunction,canbeeasilydesignedinteractivepages,youcancreatepowerfulback-endmanagementsystem,canprovidegreatconvenienceforsiteupdates,maintenance.Therefore,asawebdeveloperoradministrator,thedatabaseknowledgeisessential.ThispaperintroducesthestatusquomanagementclasswebsitesandarticlesJSP,SturtsandotherJavaWebrelatedtechnologies,object-orientedMVCdesignideasforarticlemanagementsystemforsystemrequirementsanalysis,feasibilitystudies.Thefirstchapteristheintroduction,introducesthebackgroundandthepresentsituation;thesecondchapteristhedemandanalysis,thesystemgoal,function,performance,thesystemrunningenvironment;thethirdchapteristhesystemdesign,thedatabasedesignofthebackground,thevariousmodulesofthedesign;thefourthchapteristhesystemimplementation,implementationdetailsofeachfunctionmodule;thefifthchapteristheconclusion.Keywords:JSP,Mysql,articlemanagementsystem,Sturts目錄TOC\o目錄 I1緒論 11.1論文研究主要內(nèi)容 11.2背景和研究意義 12需求分析 32.1系統(tǒng)設(shè)計(jì)目標(biāo) 32.2功能需求分析 32.3可行性分析 52.4開(kāi)發(fā)環(huán)境 52.4關(guān)鍵技術(shù)介紹 63系統(tǒng)設(shè)計(jì) 103.1功能模塊設(shè)計(jì) 103.2系統(tǒng)功能流程圖 113.3數(shù)據(jù)庫(kù)設(shè)計(jì) 123.1.1后臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì) 133.3.2后臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì) 143.3.3概念結(jié)構(gòu)設(shè)計(jì) 163.3.4邏輯結(jié)構(gòu)設(shè)計(jì) 183.3.5物理結(jié)構(gòu)設(shè)計(jì) 184系統(tǒng)實(shí)現(xiàn) 224.1數(shù)據(jù)庫(kù)連接的實(shí)現(xiàn) 224.2業(yè)務(wù)流程模塊的實(shí)現(xiàn) 224.3頁(yè)面的實(shí)現(xiàn) 224.3.1前臺(tái)界面的實(shí)現(xiàn) 224.3.2用戶(hù)注冊(cè)界面的實(shí)現(xiàn) 244.4后臺(tái)界面的實(shí)現(xiàn) 254.4.1管理員登陸頁(yè)面的實(shí)現(xiàn) 264.4.2文章管理頁(yè)面的實(shí)現(xiàn) 285結(jié)論 315.1總結(jié) 315.2展望 31參考文獻(xiàn) 32致謝 34緒論論文研究主要內(nèi)容近年來(lái),Internet技術(shù)得到迅速的發(fā)展,已經(jīng)成為計(jì)算機(jī)產(chǎn)業(yè)的一個(gè)技術(shù)熱點(diǎn)。促成Internet高速發(fā)展的因素之一就是Web技術(shù)。Web技術(shù)的發(fā)展使得那些具有交互動(dòng)態(tài)頁(yè)面、有條理的數(shù)據(jù)庫(kù)查詢(xún)、豐富信息內(nèi)容的頁(yè)面成為最吸引人的網(wǎng)頁(yè)。瀏覽Web有著執(zhí)行Windows程序一樣的感覺(jué)和操作性。隨著Internet技術(shù)的發(fā)展,它已經(jīng)成為一種操作平臺(tái),為用戶(hù)提供強(qiáng)大的服務(wù),例如網(wǎng)上購(gòu)物,網(wǎng)上電子商務(wù),社會(huì)信息數(shù)據(jù)庫(kù)服務(wù)等。作為計(jì)算機(jī)發(fā)展最迅速的領(lǐng)域之一的數(shù)據(jù)庫(kù)技術(shù),已經(jīng)形成了一整套獨(dú)有的理論,并廣泛地應(yīng)用于人們的生產(chǎn)和生活中。數(shù)據(jù)庫(kù)技術(shù)與網(wǎng)站的結(jié)合是當(dāng)今Web技術(shù)的一個(gè)熱點(diǎn)。有了數(shù)據(jù)庫(kù)的支持,可以擴(kuò)展網(wǎng)頁(yè)的功能,可以方便地設(shè)計(jì)出交互式頁(yè)面,可以構(gòu)造功能強(qiáng)大的后臺(tái)管理系統(tǒng),可以為網(wǎng)站的更新、維護(hù)提供極大的方便。因此,作為網(wǎng)絡(luò)開(kāi)發(fā)者或管理者,數(shù)據(jù)庫(kù)知識(shí)是必不可少的。在當(dāng)前社會(huì),信息已成為一種隱型的財(cái)富,人們對(duì)信息的需求再也不是局限于單純的電視、報(bào)紙等大眾途徑。隨著Internet在中國(guó)的發(fā)展日新月異,人們?cè)谌粘I钪幸苍絹?lái)越多地使用這項(xiàng)新技術(shù)來(lái)為自己的工作和生活服務(wù),人們通過(guò)網(wǎng)絡(luò)來(lái)獲取信息的需求越來(lái)越大?;诖朔N考慮,網(wǎng)絡(luò)開(kāi)發(fā)者們提出了一種“文章發(fā)布系統(tǒng)”,該系統(tǒng)能夠?qū)崿F(xiàn)在線(xiàn)更新最新文章、設(shè)置文章分類(lèi)導(dǎo)航等功能,此外,網(wǎng)站管理員也可在線(xiàn)對(duì)后臺(tái)進(jìn)行管理,例如文章的修改、刪除等操作,以保證文章的及時(shí)、準(zhǔn)確性。1.2背景和研究意義目前在國(guó)內(nèi)PHP與.NET應(yīng)用相對(duì)Java的JSP而言較為流行。而JSP由于是一種較新的技術(shù),國(guó)內(nèi)采用的較少。但在國(guó)外,JSP已經(jīng)是比較流行的一種技術(shù),尤其是電子商務(wù)類(lèi)的網(wǎng)站,多采用JSP。隨著Java語(yǔ)言的流行,JSP的應(yīng)用范圍相當(dāng)廣泛,性能也很突出,有著非常好的應(yīng)用前景,運(yùn)行效率也有著很大的成長(zhǎng)空間。針對(duì)目前文章管理系統(tǒng)的現(xiàn)狀以及目前主流Web開(kāi)發(fā)技術(shù)的比較,本文提出使用Java語(yǔ)言的JSP技術(shù)進(jìn)行編寫(xiě)。為了降低開(kāi)發(fā)復(fù)雜度、在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的Web應(yīng)用程序,采用一套基于MVC設(shè)計(jì)模式的Struts框架、Spring框架和Hibernate框架組成的集成SSH框架作為開(kāi)發(fā)模型進(jìn)行開(kāi)發(fā)。需求分析2.1系統(tǒng)設(shè)計(jì)目標(biāo)本文章發(fā)布系統(tǒng)分為前臺(tái)文章瀏覽模塊和后臺(tái)文章管理模塊。前臺(tái)文章瀏覽模塊圖片的顯示;分類(lèi)文章的顯示;文章搜索;文章評(píng)論;網(wǎng)站投票。后臺(tái)管理模塊欄目?jī)?nèi)文章的顯示;添加(圖片)文章;文章類(lèi)別的添加刪除;已發(fā)布文章的添加刪除;用戶(hù)管理;管理員對(duì)用戶(hù)留言的管理;管理員對(duì)投票情況的查看。通過(guò)以上的前臺(tái)和后臺(tái)的功能模塊,用戶(hù)可以方便快捷的瀏覽到各種各樣的特色的文章,而管理員則可以通過(guò)后臺(tái)管理這些文章。使得用戶(hù)能夠?yàn)g覽到最新的文章。2.2功能需求分析本系統(tǒng)需要具有以下功能:1.由于一項(xiàng)新的軟件在被使用之前,對(duì)于使用者來(lái)說(shuō)是陌生和嶄新的,所以要求系統(tǒng)具有良好的人機(jī)界面。2.能夠?qū)崿F(xiàn)文章發(fā)布的各項(xiàng)功能,能成功的對(duì)用戶(hù)各種信息進(jìn)行管理。3.查詢(xún)、修改、刪除、添加數(shù)據(jù)方便,數(shù)據(jù)的穩(wěn)定性和可靠性好。系統(tǒng)采用B/S模式。整個(gè)系統(tǒng)最關(guān)鍵的就是數(shù)據(jù)庫(kù)系統(tǒng),一個(gè)強(qiáng)大的數(shù)據(jù)庫(kù)可以支持完善一個(gè)優(yōu)秀的軟件設(shè)計(jì),通過(guò)軟件系統(tǒng)與數(shù)據(jù)庫(kù)系統(tǒng)的連接來(lái)實(shí)現(xiàn)通過(guò)軟件界面觀(guān)察和處理操作數(shù)據(jù)。如圖2.1所示:業(yè)務(wù)服務(wù)器業(yè)務(wù)服務(wù)器數(shù)據(jù)庫(kù)服務(wù)器事務(wù)邏輯數(shù)據(jù)邏輯ClientBrowser表示邏輯Browser表示邏輯JSP網(wǎng)頁(yè)WWW服務(wù)器/業(yè)務(wù)邏輯服務(wù)器JavaBean組件中間件JDBC數(shù)據(jù)庫(kù)服務(wù)器數(shù)據(jù)庫(kù)Mysql2005圖2-1系統(tǒng)模式圖系統(tǒng)采用三層結(jié)構(gòu),在客戶(hù)端用戶(hù)通過(guò)瀏覽器完成數(shù)據(jù)下載與模擬操作,瀏覽器端的表現(xiàn)邏輯通過(guò)JSP網(wǎng)頁(yè)完成。而系統(tǒng)內(nèi)部復(fù)雜的業(yè)務(wù)邏輯主要通過(guò)JavaBean的組件(Component)實(shí)現(xiàn),JavaBean組件在WWW服務(wù)器上運(yùn)行,通過(guò)JSP返回到客戶(hù)瀏覽器。通過(guò)表現(xiàn)邏輯與業(yè)務(wù)邏輯的分離,使網(wǎng)頁(yè)內(nèi)容簡(jiǎn)潔,系統(tǒng)的可維護(hù)性和可擴(kuò)充性增強(qiáng)。在服務(wù)器端,系統(tǒng)使用JDBC中間件訪(fǎng)問(wèn)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)服務(wù)器定義了本系統(tǒng)所需要的事務(wù)邏輯和數(shù)據(jù)邏輯。本系統(tǒng)使用JSP技術(shù)作為表現(xiàn)手段,服務(wù)器采用Tomcat6.0.3作為JSP引擎,系統(tǒng)業(yè)務(wù)邏輯由JavaBean組件完成,使用Hib框架訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)。由于系統(tǒng)測(cè)試需要成熟的數(shù)據(jù)庫(kù)支持,因此系統(tǒng)采用Mysql數(shù)據(jù)庫(kù)作為數(shù)據(jù)庫(kù)服務(wù)器。具體功能圖如圖2.2所示:圖2.2系統(tǒng)功能圖2.3可行性分析技術(shù)可行性本系統(tǒng)僅需要一臺(tái)裝有Office軟件的計(jì)算機(jī)即可,對(duì)機(jī)器本身沒(méi)有太高的要求,一般當(dāng)前學(xué)?;騻€(gè)人電腦完全可滿(mǎn)足要求。對(duì)于軟件技術(shù)要求,現(xiàn)在的程序設(shè)計(jì)語(yǔ)言已非常成熟,要運(yùn)用HTML樣式,圖形圖象制作工具來(lái)制作生動(dòng)活潑的網(wǎng)頁(yè)及美觀(guān)的圖形文件或動(dòng)畫(huà)文件。經(jīng)濟(jì)可行性由于本系統(tǒng)是為學(xué)生學(xué)習(xí)使用的系統(tǒng),裝上該應(yīng)用軟件,即可使用系統(tǒng),系統(tǒng)成本主要集中在系統(tǒng)軟件的開(kāi)發(fā)上,當(dāng)系統(tǒng)投入運(yùn)行后可以為學(xué)校節(jié)約大量的人力,物力。所帶來(lái)的效益遠(yuǎn)遠(yuǎn)大于系統(tǒng)軟件的開(kāi)發(fā)成本。在經(jīng)濟(jì)上完全可行。操作可行性界面設(shè)計(jì)時(shí)充分考慮管理人員的習(xí)慣,使得操作簡(jiǎn)單;數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計(jì)準(zhǔn)確;制表靈活;適應(yīng)力強(qiáng);容易擴(kuò)充。結(jié)論通過(guò)經(jīng)濟(jì)、技術(shù)、操作三個(gè)方面的可行性分析,我們認(rèn)為,即時(shí)文章已經(jīng)越來(lái)越被人重視,關(guān)于文章發(fā)布系統(tǒng)的開(kāi)發(fā)是非常有必要的,而且也是可行的,具有一定的使用價(jià)值。2.4開(kāi)發(fā)環(huán)境服務(wù)起端的最低配置是由建立站點(diǎn)所需要的軟件來(lái)決定的,在最底配置的情況下,服務(wù)器的性能往往不進(jìn)人意,現(xiàn)在硬件性能已經(jīng)相當(dāng)出色,而且價(jià)格也很便宜,因此通常應(yīng)給服務(wù)器端配置高性能硬件。本機(jī)器的配置如下:處理器:InterPentium41.6Hz或更高。內(nèi)存:512MB硬件空間:160GB主要采用的技術(shù):數(shù)據(jù)庫(kù):MicrosoftMysql編程語(yǔ)言:JSP服務(wù)器:Tomcat6.0.3,jdk1.6開(kāi)發(fā)環(huán)境:Windows72.4關(guān)鍵技術(shù)介紹1.jsp介紹JSP技術(shù)是以Java語(yǔ)言作為腳本語(yǔ)言的,JSP網(wǎng)頁(yè)為整個(gè)服務(wù)器端的Java庫(kù)單元提供了一個(gè)接口來(lái)服務(wù)于HTTP的應(yīng)用程序。JSP是由SunMicrosystems公司倡導(dǎo)、許多公司參與建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。在傳統(tǒng)的網(wǎng)頁(yè)HTML中加入Java程序片段和JSP標(biāo)記,就構(gòu)成了JSP網(wǎng)頁(yè)。Web服務(wù)器在遇到訪(fǎng)問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返給客戶(hù)。程序片段可以操作數(shù)據(jù)庫(kù)、重定向網(wǎng)頁(yè)以及發(fā)送e-mail等等,這就是建立動(dòng)態(tài)網(wǎng)站所需的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶(hù)端的僅僅是得到的結(jié)果,對(duì)客戶(hù)瀏覽器的要求最低,可以實(shí)現(xiàn)無(wú)ActiveX,無(wú)JavaApplet,甚至無(wú)Frame。JSP技術(shù)可以讓W(xué)eb開(kāi)發(fā)人員和設(shè)計(jì)人員非常容易的創(chuàng)建和維護(hù)動(dòng)態(tài)網(wǎng)頁(yè),特別是目前的商業(yè)系統(tǒng),作為Java技術(shù)的一部分,JSP能夠快速開(kāi)發(fā)出基于Web、獨(dú)立于平臺(tái)的應(yīng)用程序。JSP把用戶(hù)界面從系統(tǒng)內(nèi)容中分離開(kāi)來(lái),使得設(shè)計(jì)人員能夠在不改變底層動(dòng)態(tài)內(nèi)容的前提下改變整個(gè)網(wǎng)頁(yè)布局。一個(gè)JSP網(wǎng)頁(yè)就是在HTML網(wǎng)頁(yè)中包含了能夠生成動(dòng)態(tài)內(nèi)容的可執(zhí)行應(yīng)用程序代碼。此應(yīng)用程序可能包含JavaBean,JDBC對(duì)象,EnterpriseJavaBean(EJB)對(duì)象,所有的部分都可以非常容易的從JSP網(wǎng)頁(yè)上訪(fǎng)問(wèn)到。2.MacromediaDreamweaver簡(jiǎn)介Dreamweaver是美國(guó)Macromedia公司開(kāi)發(fā)的集網(wǎng)頁(yè)制作和管理網(wǎng)站于一身的所見(jiàn)即所得網(wǎng)頁(yè)編輯器,它是第一套針對(duì)專(zhuān)業(yè)網(wǎng)頁(yè)設(shè)計(jì)師特別發(fā)展的視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具,利用它可以輕而易舉地制作出跨越平臺(tái)限制和跨越瀏覽器限制的充滿(mǎn)動(dòng)感的網(wǎng)頁(yè)。Dreamweaver是唯一提供RoundtripHTML、視覺(jué)化編輯與原始碼編輯同步的設(shè)計(jì)工具。它包含HomeSite和BBEdit等主流文字編輯器。幀(frames)和表格的制作速度快的令您無(wú)法想像。進(jìn)階表格編輯功能使您簡(jiǎn)單的選擇單格、行、欄或作未連續(xù)之選取。甚至可以排序或格式化表格群組,Dreamweaver支援精準(zhǔn)定位,利用可輕易轉(zhuǎn)換成表格的圖層以拖拉置放的方式進(jìn)行版面配置。所見(jiàn)即所得Dreamweaver成功整合動(dòng)態(tài)式出版視覺(jué)編輯及電子商務(wù)功能,提供超強(qiáng)的支援能力給Third-party廠(chǎng)商,包含ASP,Apache,BroadVision,ColdFusion,iCAT,Tango與自行發(fā)展的應(yīng)用軟體。3.Mysql數(shù)據(jù)庫(kù)簡(jiǎn)介Mysql是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它最初是由MicrosoftSybase和Ashton-Tate三家公司共同開(kāi)發(fā)的。于1988年推出了第一個(gè)OS/2版本在WindowsNT推出后Microsoft與Sybase在Mysql的開(kāi)發(fā)上就分道揚(yáng)鑣了。Microsoft將Mysql移植到WindowsNT系統(tǒng)上專(zhuān)注于開(kāi)發(fā)推廣Mysql的WindowsNT版本。Sybase則較專(zhuān)注于Mysql在UNIX操作系統(tǒng)上的應(yīng)用在本文中介紹的是MicrosoftMysql以后簡(jiǎn)稱(chēng)為Mysql或MSMysql。MicrosoftMysql的特性包括:1Internet集成。Mysql數(shù)據(jù)庫(kù)引擎提供完整的XML支持。它還具有構(gòu)成最大的Web站點(diǎn)的數(shù)據(jù)存儲(chǔ)組件所需的可伸縮性、可用性和安全功能。Mysql程序設(shè)計(jì)模型與WindowsDNA構(gòu)架集成,用以開(kāi)發(fā)Web應(yīng)用程序,并且Mysql支持EnglishQuery和Microsoft搜索服務(wù)等功能,在Web應(yīng)用程序中包含了用戶(hù)友好的查詢(xún)和強(qiáng)大的搜索功能。2可伸縮性和可用性。同一個(gè)數(shù)據(jù)庫(kù)引擎可以在不同的平臺(tái)上使用,從運(yùn)行MicrosoftWindowsXP的便攜式電腦,到運(yùn)行MicrosoftWindows2000數(shù)據(jù)中心版的大型多處理器服務(wù)器。Mysql企業(yè)版支持聯(lián)合服務(wù)器、索引視圖和大型內(nèi)存支持等功能,使其得以升級(jí)到最大Web站點(diǎn)所需的性能級(jí)別。3企業(yè)級(jí)數(shù)據(jù)庫(kù)功能。Mysql關(guān)系數(shù)據(jù)庫(kù)引擎支持當(dāng)今苛刻的數(shù)據(jù)處理環(huán)境所需的功能。數(shù)據(jù)庫(kù)引擎充分保護(hù)數(shù)據(jù)完整性,同時(shí)將管理上千個(gè)并發(fā)修改數(shù)據(jù)庫(kù)的用戶(hù)的開(kāi)銷(xiāo)減到最小。Mysql分布式查詢(xún)使您得以引用來(lái)自不同數(shù)據(jù)源的數(shù)據(jù),就好象這些數(shù)據(jù)是Mysql數(shù)據(jù)庫(kù)的一部分,同時(shí)分布式事務(wù)支持充分保護(hù)任何分布式數(shù)據(jù)更新的完整性。復(fù)制同樣使您得以維護(hù)多個(gè)數(shù)據(jù)復(fù)本,同時(shí)確保單獨(dú)的數(shù)據(jù)復(fù)本保持同步??蓪⒁唤M數(shù)據(jù)復(fù)制到多個(gè)移動(dòng)的脫機(jī)用戶(hù),使這些用戶(hù)自主地工作,然后將他們所做的修改合并回發(fā)布服務(wù)器。4..Struts的簡(jiǎn)介Struts是Apache基金會(huì)Jakarta項(xiàng)目組的一個(gè)OpenSource項(xiàng)目,自采用MVC模式,能夠很好地幫助Java開(kāi)發(fā)者利用J2EE開(kāi)發(fā)Web應(yīng)用。和其他的Java架構(gòu)一樣.Struts也是面向?qū)ο笤O(shè)計(jì),將MVC模式"分離顯示邏輯和業(yè)務(wù)邏輯"的能力發(fā)揮得淋漓盡致。Structs框架的核心是一個(gè)彈性的控制層,基于JavaServlets,JavaBeans,ResourceBundles與XML等標(biāo)準(zhǔn)技術(shù),以及JakartaCommons的一些類(lèi)庫(kù)。Struts有一組相互協(xié)作的類(lèi)(組件)、Servlet以及jsptaglib組成?;趕truts構(gòu)架的web應(yīng)用程序基本上符合JSPMode12的設(shè)計(jì)標(biāo)準(zhǔn),可以說(shuō)是一個(gè)傳統(tǒng)MVC設(shè)計(jì)模式的一種變化類(lèi)型。Struts最早是作為ApacheJakarta項(xiàng)目的組成部分問(wèn)世運(yùn)作。項(xiàng)目的創(chuàng)立者希望通過(guò)對(duì)該項(xiàng)目的研究,改進(jìn)和提高JavaServerPages、Servlet、標(biāo)簽庫(kù)以及面向?qū)ο蟮募夹g(shù)水準(zhǔn)。Struts的目的是為了減少在運(yùn)用MVC設(shè)計(jì)模型來(lái)開(kāi)發(fā)Web應(yīng)用的時(shí)間。你仍然需要學(xué)習(xí)和應(yīng)用該架構(gòu),不過(guò)它將可以完成其中一些繁重的工作。Struts跟Tomcat、Turbine等諸多Apache項(xiàng)目一樣,是開(kāi)源軟件,這是它的一大優(yōu)點(diǎn),使開(kāi)發(fā)者能更深入的了解其內(nèi)部實(shí)現(xiàn)機(jī)制。除此之外,Struts的優(yōu)點(diǎn)主要集中體現(xiàn)在兩個(gè)方面:Taglib和頁(yè)面導(dǎo)航。Taglib是Struts的標(biāo)記庫(kù),靈活運(yùn)用,能大大提高開(kāi)發(fā)效率。另外,就目前國(guó)內(nèi)的JSP開(kāi)發(fā)者而言,除了使用JSP自帶的常用標(biāo)記外,很少開(kāi)發(fā)自己的標(biāo)記,或許Struts是一個(gè)很好的起點(diǎn)。Struts2是Struts的下一代產(chǎn)品,是在struts1和WebWork的技術(shù)基礎(chǔ)上進(jìn)行了合并的全新的Struts2框架。其全新的Struts2的體系結(jié)構(gòu)與Struts1的體系結(jié)構(gòu)差別巨大。Struts2以WebWork為核心,采用攔截器的機(jī)制來(lái)處理用戶(hù)的請(qǐng)求,這樣的設(shè)計(jì)也使得業(yè)務(wù)邏輯控制器能夠與ServletAPI完全脫離開(kāi),所以Struts2可以理解為WebWork的更新產(chǎn)品。雖然從Struts1到Struts2有著太大的變化,但是相對(duì)于WebWork,Struts2的變化很小。當(dāng)Web容器收到請(qǐng)求(HttpServletRequest)它將請(qǐng)求傳遞給一個(gè)標(biāo)準(zhǔn)的的過(guò)濾鏈包括(ActionContextCleanUp)過(guò)濾器,然后經(jīng)過(guò)Otherfilters(SiteMesh,etc),接下來(lái)需要調(diào)用FilterDispatcher核心控制器,然后它調(diào)用ActionMapper確定請(qǐng)求那個(gè)Action,ActionMapper返回一個(gè)收集Action詳細(xì)信息的ActionMaping對(duì)象。接下來(lái)FilterDispatcher將控制權(quán)委派給ActionProxy,ActionProxy調(diào)用配置管理器(ConfigurationManager)從配置文件中讀取配置信息(struts.xml),然后創(chuàng)建ActionInvocation對(duì)象,ActionInvocation在調(diào)用Action之前會(huì)依次的調(diào)用所用配置攔截器(InterceptorN)一旦執(zhí)行結(jié)果返回結(jié)果字符串ActionInvocation負(fù)責(zé)查找結(jié)果字符串對(duì)應(yīng)的(Result)然后執(zhí)行這個(gè)ResultResult會(huì)調(diào)用一些模版(JSP)來(lái)呈現(xiàn)頁(yè)面,之后攔截器(InterceptorN)會(huì)在被執(zhí)行(順序和Action執(zhí)行之前相反)最后響應(yīng)(HttpServletResponse)被返回在web.xml中配置的那些過(guò)濾器和(核心控制器)(FilterDispatcher)。其工作流程如圖2.2所示。圖2.3Sturts的工作流程系統(tǒng)設(shè)計(jì)3.1功能模塊設(shè)計(jì)本章是功能模塊,網(wǎng)站的功能結(jié)構(gòu)圖設(shè)計(jì),是本系統(tǒng)中非常重要的一部分,由這部分給出了本系統(tǒng)總體的功能劃分,對(duì)于以后的詳細(xì)設(shè)計(jì)起到了至關(guān)重要的作用,詳細(xì)設(shè)計(jì)部分就是按照總體設(shè)計(jì)中的網(wǎng)站功能結(jié)構(gòu)設(shè)計(jì)圖,一步步地進(jìn)行的。系統(tǒng)功能如圖3.1所示:圖3.1功能結(jié)構(gòu)圖前臺(tái):首頁(yè):文章分類(lèi):(國(guó)際娛樂(lè)體育等等)文章分類(lèi)需要從數(shù)據(jù)庫(kù)中動(dòng)態(tài)取出(因?yàn)楹笈_(tái)中有添加刪除修改分類(lèi)的功能)可以只顯示4—5個(gè)分類(lèi);文章搜索:(可以選擇分類(lèi))以文章標(biāo)題模糊搜索,有分頁(yè)功能;圖片文章:按文章點(diǎn)擊率高低顯示前10條左右的文章(顯示點(diǎn)擊率);網(wǎng)友投票:對(duì)得知本站信息的調(diào)研;網(wǎng)站公告:顯示公告信息;用戶(hù)登錄:網(wǎng)站用戶(hù)登錄,登陸后用戶(hù)獲得評(píng)論和投票的權(quán)限;文章評(píng)論:網(wǎng)站用戶(hù)登錄后可以對(duì)文章進(jìn)行評(píng)論。后臺(tái):管理員:擁有所有權(quán)限管理員維護(hù):管理員維護(hù)(包含刪除)管理員添加用戶(hù)管理:用戶(hù)列表(包含刪除)文章分類(lèi)管理:分類(lèi)列表(包含刪除、添加)文章管理:文章列表(包含刪除、添加)圖片文章管理:圖片列表(包含刪除、添加)投票查看:查看投票結(jié)果公告管理:公告列表(包含刪除)公告添加留言管理:留言列表(包含刪除)會(huì)員:發(fā)布留言進(jìn)行投票系統(tǒng)采用了敏捷開(kāi)發(fā)的思想,結(jié)合跨平臺(tái)的J2EE技術(shù)架構(gòu),數(shù)據(jù)庫(kù)采用了Mysql;使得系統(tǒng)具有易用性、個(gè)性化、跨平臺(tái)等特點(diǎn);同時(shí)又保證數(shù)據(jù)的安全、穩(wěn)定、快速和完整;使其運(yùn)行得高速、安全、穩(wěn)定。3.2系統(tǒng)功能流程圖下面是系統(tǒng)功能流程圖如圖3.3所示:進(jìn)入系統(tǒng)首頁(yè)進(jìn)入系統(tǒng)首頁(yè)是管理員嗎登錄前臺(tái)進(jìn)行瀏覽、搜索文章信息、留言、投票輸入用戶(hù)名密碼登錄系統(tǒng)后臺(tái)密碼是否正確進(jìn)入后臺(tái)進(jìn)行操作是否是否圖3.2系統(tǒng)流程圖3.3數(shù)據(jù)庫(kù)設(shè)計(jì)早期數(shù)據(jù)庫(kù)設(shè)計(jì)主要采用手工與經(jīng)驗(yàn)相結(jié)合的方法,設(shè)計(jì)質(zhì)量往往與設(shè)計(jì)人員的經(jīng)驗(yàn)與水平有直接關(guān)系。數(shù)據(jù)庫(kù)設(shè)計(jì)是一種技藝,缺乏科學(xué)理論和工程方法的支持,設(shè)計(jì)質(zhì)量難以保證。常常是數(shù)據(jù)庫(kù)運(yùn)行一段時(shí)間后又不同程度地發(fā)現(xiàn)各種問(wèn)題,增加了系統(tǒng)維護(hù)的代價(jià)。人們?cè)诓粩嗟膶?shí)踐中,提出了如下的數(shù)據(jù)庫(kù)設(shè)計(jì)方法:1新奧爾良(NewOrleans)方法該方法把數(shù)據(jù)庫(kù)設(shè)計(jì)分為若干階段和步驟,并采用一些輔助手段實(shí)現(xiàn)每一過(guò)程。它運(yùn)用軟件工程的思想,即用工程化方法設(shè)計(jì)數(shù)據(jù)庫(kù)。新奧爾良方法屬于規(guī)范設(shè)計(jì)法。規(guī)范設(shè)計(jì)法,其基本思想是過(guò)程迭代和逐步求精。2基于E-R模型的數(shù)據(jù)庫(kù)設(shè)計(jì)方法該方法用E-R模型來(lái)設(shè)計(jì)數(shù)據(jù)庫(kù)的概念型,是數(shù)據(jù)庫(kù)概念設(shè)計(jì)階段廣泛采用的方法。3第三范式的設(shè)計(jì)方法該方法用關(guān)系數(shù)據(jù)理論為指導(dǎo)來(lái)設(shè)計(jì)數(shù)據(jù)庫(kù)的邏輯模型,是數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)階段可以采用的一種有效方法。4ODL(ObjectDefinitionLanguage)方法這是面向?qū)ο蟮臄?shù)據(jù)庫(kù)設(shè)計(jì)方法,該方法用面向?qū)ο蟮母拍詈托g(shù)語(yǔ)來(lái)說(shuō)明數(shù)據(jù)庫(kù)結(jié)構(gòu)。ODL方法可以描述面向?qū)ο髷?shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì),可以直接轉(zhuǎn)換為面向?qū)ο蟮臄?shù)據(jù)庫(kù)。后臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)MYSQL介紹Mysql是由Microsoft開(kāi)發(fā)和推廣的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開(kāi)發(fā)的,并于1988年推出了第一個(gè)OS/2版本。Mysql近年來(lái)不斷更新版本,1996年,Microsoft推出了Mysql6.5版本;1998年,Mysql7.0版本和用戶(hù)見(jiàn)面;Mysql是Microsoft公司于2007年推出的版本。Mysql特點(diǎn):(1)真正的讀者機(jī)/服務(wù)器體系結(jié)構(gòu)。(2)圖形化用戶(hù)界面,使系統(tǒng)管理和數(shù)據(jù)庫(kù)管理更加直觀(guān)、簡(jiǎn)單。(2)豐富的編程接口工具,為用戶(hù)進(jìn)行程序設(shè)計(jì)提供了更大的選擇余地。(3)Mysql與WindowsNT完全集成,利用了NT的許多功能,如發(fā)送和接受消息,管理登錄安全性等。Mysql也可以很好地與MicrosoftBackOffice產(chǎn)品集成。(4)具有很好的伸縮性,可跨越從運(yùn)行Windows95/98的膝上型電腦到運(yùn)行Windows2000的大型多處理器等多種平臺(tái)使用。(5)對(duì)Web技術(shù)的支持,使用戶(hù)能夠很容易地將數(shù)據(jù)庫(kù)中的數(shù)據(jù)發(fā)布到Web頁(yè)面上。(6)Mysql提供數(shù)據(jù)倉(cāng)庫(kù)功能,這個(gè)功能只在Oracle和其他更昂貴的DBMS中才有[7]。3.3.2后臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)系統(tǒng)操作模塊如圖3.3所示:圖3.3系統(tǒng)操作流程圖數(shù)據(jù)庫(kù)增加模塊添加信息時(shí),編號(hào)字段由系統(tǒng)自動(dòng)生成,且不能修改,其他信息由用戶(hù)輸入,之后對(duì)數(shù)據(jù)進(jìn)行合法判斷,合法則寫(xiě)入保存至數(shù)據(jù)庫(kù),不合法則重新輸入數(shù)據(jù)。數(shù)據(jù)增加流程如圖3.4所示:是否是否圖3.4數(shù)據(jù)增加流程圖3.數(shù)據(jù)修改模塊在修改信息時(shí),先選中一條待修改的記錄,然后直接輸入數(shù)據(jù),判斷合法性,合法則保存至數(shù)據(jù)庫(kù),不合法重新輸入。數(shù)據(jù)修改流程圖如圖3.5所示:是否是否圖3.5數(shù)據(jù)修改流程圖4.數(shù)據(jù)刪除模塊當(dāng)用戶(hù)選定一條記錄時(shí),單擊刪除按鈕,會(huì)提示用戶(hù)是否確定刪除,然后刪除數(shù)據(jù)庫(kù)相關(guān)內(nèi)容。數(shù)據(jù)刪除流程圖如圖3.6所示:否是否是圖3.6數(shù)據(jù)刪除流程圖3.3.3概念結(jié)構(gòu)設(shè)計(jì)對(duì)用戶(hù)要求描述的現(xiàn)實(shí)世界(可能是一個(gè)工廠(chǎng)、一個(gè)商場(chǎng)或者一個(gè)學(xué)校等),通過(guò)對(duì)其中住處的分類(lèi)、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個(gè)概念模型應(yīng)反映現(xiàn)實(shí)世界各部門(mén)的信息結(jié)構(gòu)、信息流動(dòng)情況、信息間的互相制約關(guān)系以及各部門(mén)對(duì)信息儲(chǔ)存、查詢(xún)和加工的要求等[10]。通過(guò)對(duì)現(xiàn)實(shí)世界概念模型的抽象,確立本系統(tǒng)的實(shí)體為:管理員、用戶(hù)(游客只有文章瀏覽權(quán)限)。全局E-R圖如3.7所示:圖3.7全局E-R圖實(shí)體屬性圖,如圖3.8所示:圖3.8實(shí)體屬性圖3.3.4邏輯結(jié)構(gòu)設(shè)計(jì)主要工作是將現(xiàn)實(shí)世界的概念數(shù)據(jù)模型設(shè)計(jì)成數(shù)據(jù)庫(kù)的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫(kù)管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時(shí),可能還需為各種數(shù)據(jù)處理應(yīng)用領(lǐng)域產(chǎn)生相應(yīng)的邏輯子模式。這一步設(shè)計(jì)的結(jié)果就是所謂“關(guān)系數(shù)據(jù)庫(kù)模型”。即從實(shí)體型轉(zhuǎn)化成關(guān)系模式。實(shí)體的屬性就是關(guān)系的屬性,實(shí)體的碼就是關(guān)系的碼[10]。關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)是支持關(guān)系模型的數(shù)據(jù)庫(kù)系統(tǒng)。關(guān)系模型所具有的特點(diǎn)是:概念單一、規(guī)范化、以二維表格表示。綜上所述,可將E-R圖轉(zhuǎn)換為關(guān)系模型。每個(gè)關(guān)系的碼用下劃線(xiàn)表示。管理員信息表-t_admin(管理員代碼,管理員賬號(hào),管理員密碼)文章類(lèi)別表-t_catelog(文章類(lèi)別編號(hào),文章類(lèi)別名稱(chēng),文章類(lèi)別描述,文章類(lèi)別刪除操作)公告信息表-t_gonggao(公告編號(hào),公告標(biāo)題,公告詳情,公告發(fā)布日期,公告發(fā)布者,公告刪除操作,意見(jiàn)備注)留言信息表-t_liuyan(留言編號(hào),留言標(biāo)題,留言詳情,留言發(fā)布時(shí)間,留言發(fā)布者)文章信息表-t_news(文章標(biāo)題,文章內(nèi)容,文章發(fā)布時(shí)間,文章所屬類(lèi)別編號(hào))圖片文章信息表-t_picNews(圖片文章編號(hào),圖片名稱(chēng),圖片文章內(nèi)容,圖片路徑,圖片原始名,圖片發(fā)布時(shí)間)投票選項(xiàng)表-t_toupiao(投票選項(xiàng)編號(hào),投票選項(xiàng)名稱(chēng),投票時(shí)間)用戶(hù)信息表-t_user(用戶(hù)編號(hào),用戶(hù)名,用戶(hù)密碼,用戶(hù)真實(shí)姓名,用戶(hù)地址,用戶(hù)性別,用戶(hù)電話(huà),用戶(hù)郵箱,用戶(hù)qq,用戶(hù)年齡,用戶(hù)生日,用戶(hù)學(xué)歷)該系統(tǒng)在Mysql中的數(shù)據(jù)庫(kù)名稱(chēng)為db_news,根據(jù)以上分析得出數(shù)據(jù)庫(kù)中的8張表。3.3.5物理結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)物理設(shè)計(jì)是后半段。將一個(gè)給定邏輯結(jié)構(gòu)實(shí)施到具體的環(huán)境中時(shí),邏輯數(shù)據(jù)模型要選取一個(gè)具體的工作環(huán)境,這個(gè)工作環(huán)境提供了數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)與存取方法,這個(gè)過(guò)程就是數(shù)據(jù)庫(kù)的物理設(shè)計(jì)。物理結(jié)構(gòu)依賴(lài)于給定的DBMS和和硬件系統(tǒng),因此設(shè)計(jì)人員必須充分了解所用RDBMS的內(nèi)部特征、存儲(chǔ)結(jié)構(gòu)、存取方法[10]。數(shù)據(jù)庫(kù)的物理設(shè)計(jì)通常分為兩步,第一,確定數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),第二,評(píng)價(jià)實(shí)施空間效率和時(shí)間效率確定數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)包含下面四方面的內(nèi)容:確定數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)的存取路徑確定數(shù)據(jù)的存放位置確定系統(tǒng)配置為了滿(mǎn)足系統(tǒng)存儲(chǔ)數(shù)據(jù)需要,方便進(jìn)行插入,更新,統(tǒng)計(jì)和查詢(xún)分析等操作,數(shù)據(jù)一共設(shè)計(jì)為兩個(gè)部分,第一部分為滿(mǎn)足插入,更新,刪除較多的數(shù)據(jù)存儲(chǔ)。第二部分為滿(mǎn)足查詢(xún)和統(tǒng)計(jì)分析。為了方便進(jìn)行數(shù)據(jù)庫(kù)之間的遷移,數(shù)據(jù)庫(kù)中不建議采用存儲(chǔ)過(guò)程,觸發(fā)器等數(shù)據(jù)庫(kù)特征明顯的代碼,所有表建立,操作SQL均采用標(biāo)準(zhǔn)語(yǔ)句。數(shù)據(jù)庫(kù)表結(jié)構(gòu)如下:設(shè)計(jì)表“admin”列名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空userIdint4是userNamevarchar50否userPwvarchar50否設(shè)計(jì)表“catelog”列名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空catelog_idint4是catelog_namevarchar50否catelog_miaoshuvarchar5000否catelog_delvarchar50否設(shè)計(jì)表“gonggao”列名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空gonggao_idint4否gonggao_titlevarchar50否gonggao_contentvarchar8000否gonggao_datavarchar50否gonggao_fabuzhevarchar50否gonggao_delvarchar50否設(shè)計(jì)表“l(fā)iuyan”列名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空l(shuí)iuyan_idint4是liuyan_titlevarchar50否liuyan_contentvarchar5000否liuyan_datevarchar50否liuyan_uservarchar50否設(shè)計(jì)表“news”列名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空news_idint4是news_titlevarchar50否news_contentvarchar5000否news_datevarchar50否catelog_idvarchar50否設(shè)計(jì)表“picNews”列名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空picNews_idint4是picNews_titlevarchar50否picNews_contentvarchar8000否picNews_picvarchar50否picNews_pic_yuanshimingvarchar50否picNews_datevarchar50否設(shè)計(jì)表“toupiao”列名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空toupiao_idint4是toupiao_namevarchar50否toupiao_datevarchar50否設(shè)計(jì)表“user”列名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空user_idint4是user_namevarchar50否user_pwvarchar50否user_typeint50否user_realnamevarchar50否user_addressvarchar50否user_sexvarchar50否user_telvarchar50否user_emailvarchar50否user_qqvarchar50否user_manvarchar50否user_agevarchar50否表3.9數(shù)據(jù)庫(kù)表單系統(tǒng)實(shí)現(xiàn)4.1數(shù)據(jù)庫(kù)連接的實(shí)現(xiàn)<html><head><title>文章發(fā)布_首頁(yè)</title> <metahttp-equiv="keywords"content="keyword1,keyword2,keyword3"><metahttp-equiv="description"content="thisismypage"><metahttp-equiv="content-type"content="text/html;charset=UTF-8"><!--<linkrel="stylesheet"type="text/css"href="./styles.css">--></head><body><scripttype="text/javascript">varurl="/news/index.action"window.location.href=url;</script></body></html>4.2業(yè)務(wù)流程模塊的實(shí)現(xiàn)業(yè)務(wù)流程圖解:訪(fǎng)問(wèn)網(wǎng)頁(yè)的權(quán)限種類(lèi)分為兩種:一為游客,只可以瀏覽文章,搜索文章;二,經(jīng)過(guò)注冊(cè)后,成為網(wǎng)站用戶(hù),在享有游客的權(quán)限外,還可以對(duì)文章發(fā)表評(píng)論,并對(duì)網(wǎng)站進(jìn)行投票。后臺(tái)管理員通過(guò)登錄可以對(duì)系統(tǒng)進(jìn)行管理,包括用戶(hù)管理(包括刪除),文章類(lèi)別的管理(包括添加與刪除),文章的管理(包括添加與刪除),圖片文章的管理(添加與刪除),文章評(píng)論的管理(包括添加與刪除),文章公告的管理(包括添加與刪除),以及對(duì)網(wǎng)站投票結(jié)果的查詢(xún)。4.3頁(yè)面的實(shí)現(xiàn)4.3.1前臺(tái)界面的實(shí)現(xiàn)通過(guò)前面的詳細(xì)設(shè)計(jì),根據(jù)該系統(tǒng)的要求現(xiàn)在開(kāi)始設(shè)計(jì)系統(tǒng)的前臺(tái)部分。前臺(tái)主要實(shí)現(xiàn)用戶(hù)的注冊(cè)、登錄,進(jìn)入網(wǎng)站后可以搜索并瀏覽文章,留言、投票等功能,其整體頁(yè)面如下圖4.1所示,圖4.1前臺(tái)頁(yè)面代碼如下:publicStringindex(){ Maprequest=(Map)ServletActionContext.getContext().get("request"); ListpicNewsList=picNewsDAO.findAll(); if(picNewsList.size()>4){ picNewsList=picNewsList.subList(0,4); } request.put("picNewsList",picNewsList); Stringsql="fromTCatelogwherecatelogDel='no'"; ListcateLogList=catelogDAO.getHibernateTemplate().find(sql); for(inti=0;i<cateLogList.size();i++){ TCatelogcatelog=(TCatelog)cateLogList.get(i); catelog.setNewsList(newsDAO.getHibernateTemplate().find("fromTNewswherecatelogId="+catelog.getCatelogId())); } request.put("cateLogList",cateLogList); returnActionSupport.SUCCESS; }4.3.2用戶(hù)注冊(cè)界面的實(shí)現(xiàn)用戶(hù)注冊(cè)頁(yè)面,填寫(xiě)用戶(hù)名、密碼、真是姓名、住址、聯(lián)系方式、email、qq等信息完成注冊(cè),具體實(shí)現(xiàn)頁(yè)面如下4.2所示,圖4.2用戶(hù)注冊(cè)頁(yè)面 publicStringuserReg() { TUseruser=newTUser(); user.setUserName(userName); user.setUserPw(userPw); user.setUserAddress(userAddress); user.setUserTel(userTel); user.setUserRealname(userRealname); user.setUserEmail(userEmail); user.setUserSex(userSex); user.setUserQq(userQq); userDAO.save(user); //this.setMessage("注冊(cè)成功"); //this.setPath("/qiantai/index.jsp"); return"successAdd"; } 4.4后臺(tái)界面的實(shí)現(xiàn)后臺(tái)主要功能模塊主要包括了管理員登陸、系統(tǒng)屬性、管理員維護(hù)、用戶(hù)管理、文章分類(lèi)、文章管理、圖片文章、投票查看、公告管理、留言管理。管理員添加相應(yīng)類(lèi)別文章的界面:管理員在此界面輸入文章的相關(guān)信息,選擇所要輸入文章所屬類(lèi)別、文章標(biāo)題、以及文章的具體內(nèi)容,然后按要求校驗(yàn)正確性檢測(cè),當(dāng)數(shù)據(jù)合法時(shí)則添加至數(shù)據(jù)庫(kù)。其他如文章類(lèi)別添加、圖片文章添加、公告添加等功能輸入基本上相類(lèi)似。如圖4.4所示,圖4.3后臺(tái)頁(yè)面 publicStringadminManageFenye() { ListadminList=adminDAO.findAll(); intpageSize=3; intfromIndex=(index-1)*pageSize; inttoIndex=Math.min(fromIndex+pageSize,adminList.size()); ListadminListFenye=adminList.subList(fromIndex,toIndex); Paginationp=newPagination();//創(chuàng)建分頁(yè)對(duì)象p.setIndex(index);//設(shè)置頁(yè)數(shù)p.setPageSize(pageSize);p.setTotle(adminList.size());//設(shè)置總共的條數(shù)p.setData(adminListFenye);//設(shè)置數(shù)據(jù)p.setPath("adminManageFenye.action?");//跳轉(zhuǎn)的路徑 Maprequest=(Map)ServletActionContext.getContext().get("request"); request.put("page",p); returnActionSupport.SUCCESS; }4.4.1管理員登陸頁(yè)面的實(shí)現(xiàn)在用戶(hù)登錄界面,在用戶(hù)名對(duì)應(yīng)的文本框中輸入用戶(hù)名,在密碼對(duì)應(yīng)的文本框中輸入密碼,如果用戶(hù)名和密碼同時(shí)與數(shù)據(jù)庫(kù)中的用戶(hù)名和密碼相對(duì)應(yīng),點(diǎn)擊“確定”后進(jìn)入系統(tǒng)的主界面。如果輸入的信息不正確,則給出提示。輸入:用戶(hù)名和密碼。處理:校檢字符的有效性。用戶(hù)要登錄本系統(tǒng)需要提供用戶(hù)名和密碼,在這里就是要檢驗(yàn)用戶(hù)是否滿(mǎn)足輸入的要求,即檢驗(yàn)用戶(hù)名和密碼文本框是否為空,若為空,則提示用戶(hù)輸入用戶(hù)名和密碼。檢驗(yàn)用戶(hù)名是否存在或密碼是否正確,即是否存在用戶(hù)輸入的用戶(hù)名,并且密碼是否正確。輸出:登錄成功,進(jìn)入用戶(hù)的系統(tǒng)使用資源頁(yè)面,不成功則顯示錯(cuò)誤信息頁(yè)面。如圖4.4所示:圖4.4后臺(tái)登陸頁(yè)面 <scriptlanguage="javascript"> functioncheck1() {if(document.ThisForm.userName.value=="") {alert("請(qǐng)輸入用戶(hù)名"); document.ThisForm.userName.focus(); returnfalse;} if(document.ThisForm.userPw.value=="") {alert("請(qǐng)輸入密碼"); document.ThisForm.userPw.focus(); returnfalse; }loginService.login(document.ThisForm.userName.value,document.ThisForm.userPw.value,0,callback);} functioncallback(data) {if(data=="no") {alert("用戶(hù)名或密碼錯(cuò)誤");} if(data=="yes") {alert("通過(guò)驗(yàn)證,系統(tǒng)登錄成功"); window.location.href="<%=path%>/loginSuccess.jsp"; } } </script>數(shù)據(jù)庫(kù)鏈接:id="dataSource" class="mons.dbcp.BasicDataSource"> <propertyname="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"> </property> <propertyname="url" value="jdbc:sqlserver://localhost:1433;databaseName=db_news"> </property> <propertyname="username"value="sa"></property> <propertyname="password"value="sa"></property>4.4.2文章管理頁(yè)面的實(shí)現(xiàn)功能描述:此模塊要實(shí)現(xiàn)對(duì)文章的管理功能,管理員可以添加刪除文章的相關(guān)信息。文章信息管理模塊的IPO過(guò)程:a) 添加文章信息操作: 點(diǎn)擊添加文章信息按鈕,輸入需要添加文章的內(nèi)容。內(nèi)容包括文章的標(biāo)題、內(nèi)容、分類(lèi)。 檢驗(yàn)用戶(hù)輸入的文章的標(biāo)題、內(nèi)容、分類(lèi)是否符合文章數(shù)據(jù)庫(kù)表中字段定義。若不符合則提示輸入有誤。 提示用戶(hù)信息添加成功。 更新用戶(hù)數(shù)據(jù)庫(kù)表的信息。b) 刪除文章信息 點(diǎn)擊刪除文章信息按鈕。 彈出對(duì)話(huà)框“是否確定刪除”,點(diǎn)擊是,"yes"傳入jsp文件進(jìn)而執(zhí)行actionDel方法 刪除文章信息成功。 更新用戶(hù)數(shù)據(jù)庫(kù)表的信息。界面如圖4.5所示:圖4.5文章管理模塊 publicStringnewsAll() {ListnewsList=newsDAO.findAll(); Maprequest=(Map)ServletActionContext.getContext().get("request"); request.put("newsList",newsList); Stringsql="fromTCatelogwherecatelogDel='no'"; ListcateLogList=catelogDAO.getHibernateTemplate().find(sql); for(inti=0;i<cateLogList.size();i++) {TCatelogcatelog=(TCatelog)cateLogList.get(i); catelog.setNewsList(newsDAO.getHibernateTemplate().find("fromTNewswherecatelogId="+catelog.getCatelogId()));} request.put("cateLogList",cateLogList); returnActionSupport.SUCCESS; }文章添加頁(yè)面如圖4.6所示:圖4.6文章添加頁(yè)面 publicStringnewsAdd() {TNewsnews=newTNews(); news.setNewsTitle(newsTitle); news.setNewsContent(newsContent); news.setNewsDate(newDate().toLocaleString()); news.setCatelogId(catelogId); newsDAO.save(news); this.setMessage("操作成功"); this.setPath("newsMana.action"); return"succeed"; }結(jié)論5.1總結(jié)本文通過(guò)本系統(tǒng)設(shè)計(jì)與開(kāi)發(fā),從而得出下列結(jié)論:通過(guò)這次畢業(yè)設(shè)計(jì),我明白了只有不斷的是實(shí)踐,多動(dòng)手操作才能盡快掌
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基礎(chǔ)路面土方合同范例
- 天津?yàn)I海職業(yè)學(xué)院《電磁場(chǎng)的數(shù)值方法》2023-2024學(xué)年第一學(xué)期期末試卷
- 專(zhuān)用裝備采購(gòu)合同范例
- 施工投標(biāo)合同范例
- 會(huì)計(jì)合伙合同范例
- 倉(cāng)房搭建合同范例
- 叉車(chē)購(gòu)銷(xiāo)轉(zhuǎn)讓合同范例
- 商鋪?zhàn)赓U續(xù)租合同范例
- 口腔內(nèi)科學(xué)模擬練習(xí)題(附答案)
- 2025年鐵嶺貨運(yùn)資格證考試有哪些項(xiàng)目
- 全套教學(xué)課件《工程倫理學(xué)》
- 大數(shù)據(jù)+治理智慧樹(shù)知到期末考試答案章節(jié)答案2024年廣州大學(xué)
- 江蘇省建筑與裝飾工程計(jì)價(jià)定額(2014)電子表格版
- T-SDDA 0002-2021 住宅裝飾裝修工程質(zhì)量驗(yàn)收標(biāo)準(zhǔn)
- 小學(xué)寫(xiě)字閱讀考核實(shí)施方案
- 震雄注塑機(jī)Ai_01操作說(shuō)明書(shū)(中文)
- 四川省煤礦探放水基準(zhǔn)線(xiàn)“兩把鎖”管理規(guī)定
- 壓力管道元件產(chǎn)品合格證
- 10KV變電站供電系統(tǒng)設(shè)計(jì)
- 15立方米的液氯儲(chǔ)罐課程設(shè)計(jì)說(shuō)明書(shū)
- 發(fā)現(xiàn)所授薪律師及律師助理管理辦法
評(píng)論
0/150
提交評(píng)論