




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
S2SH投票管理系統(tǒng)摘要網(wǎng)上投票系統(tǒng)憑借其方便快捷等特點已經(jīng)成為統(tǒng)計收集信息不可或缺的工具,隨著網(wǎng)絡技術的開展網(wǎng)上投票系統(tǒng)的作用將會越來越大。在積極建立科學管理機制的今天,僅僅靠原始的手工管理或簡單的單機管理,管理部門面對大量的信息,無法有效率地將其中的重要局部提取出來,并做出相應的判斷和處理。投票管理者的決策只能依據(jù)手工表數(shù)據(jù),在浪費大量人力、物力的同時無法做到實時監(jiān)控,難以保證數(shù)據(jù)的準確性和及時性。因此,先進的管理思想就成為了一個可望而不可及的目標。投票非常急需一套既有先進管理思想的系統(tǒng),作為實現(xiàn)目標和提高現(xiàn)有投票管理水平的一種重要手段。隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。作為計算機應用的一局部,在先進的計算機技術、通信技術、控制技術及IC卡技術根底上,采用系統(tǒng)集成方法,逐步建立一個智能化的投票系統(tǒng)。本論文就建立一套完善的網(wǎng)上投票系統(tǒng)進行了詳細全面的論述。訪問本系統(tǒng)的用戶分為會員和管理員兩種角色。會員的主要功能有:查看投票內(nèi)容,網(wǎng)上投票,查看系統(tǒng)公告,在線注冊會員模塊。系統(tǒng)中的管理員的主要功能有:投票內(nèi)容管理,公告管理,會員的管理。 關鍵字:網(wǎng)上投票系統(tǒng);JSP;S2SHS2SHVotingManagementSystemAbstractTheonlinevotingsystembyvirtueofitsconvenience,hasbecomeanindispensabletoolofstatisticalinformationcollection,alongwiththedevelopmentofnetworktechnology,theonlinevotingsystemwillplayamoreimportantrole.Activelyestablishascientificmanagementsystemoftoday,onlybytheoriginalmanualmanagementorsimplesinglemanagement,managementdepartmentofinformation,can'tefficientlyextractedfromoneoftheimportantpart,andmakethecorrespondingjudgmentandhandling.Themanager'sdecisiontovoteonlyonthebasisofthetabledatabyhand,unabletodoreal-timemonitoringinwastealotofmanpower,materialresourcesandatthesametime,itisdifficulttoensuretheaccuracyandtimelinessofdata.Therefore,theadvancedmanagementthoughtbecomesamilesawaygoals.Systemofvotingisinurgentneedofanalreadytohavetheadvancedmanagementconcept,asagoalandanimportantmeanstoimprovethemanagementleveloftheexistingvoting.Withthecontinuousimprovementofscienceandtechnology,computerscienceincreasinglymature,itspowerfulfeaturesforpeopletohaveaprofoundunderstanding,ithasenteredthehumansocietyinvariousfieldsandisplayinganincreasinglyimportantrole.Asapartofcomputerapplication,theadvancedcomputertechnology,communicationtechnology,controltechnologyandICcardtechnologybasis,asystemsintegrationapproach,andgraduallyestablishaintelligentvotingsystem.Inthispaper,weestablishasetofperfectonlinevotingsystemindetail.Userstoaccessthesystemisdividedintotwokindsofrolemembershipandadministrator.Themainfunctionofmembershipare:onlinevotingpoll,content,viewthesystemannouncement,onlineregistrationmodule.Themainfunctionofthesystemadministrator:votingcontentmanagement,bulletinmanagement,membershipmanagement.KeyWords:onlinevotingsystem;JSP;S2SH目錄摘要 IAbstract II1緒論 11.1課題來源及意義 11.2國內(nèi)外開展狀況 21.3研究目標、內(nèi)容 21.3.1前臺模塊 31.3.2后臺模塊: 32系統(tǒng)概述與技術介紹 42.1B/S結構介紹 42.2SQLServer數(shù)據(jù)庫 42.3MyEclipse介紹 42.4JavaScrip語言 52.5JSP技術 52.6MVC模式 62.7SSH框架 8Struts框架 9Spring框架 9Hibernate框架 103需求分析 113.1開發(fā)環(huán)境 113.2需求分析 113.3可行性分析 113.3.1經(jīng)濟性 113.3.2技術性 123.3.3操作性 123.3.4法律性 123.4問題分析 123.5分析模型 134系統(tǒng)概要設計 144.1系統(tǒng)設計概述 144.2系統(tǒng)用例圖 144.3系統(tǒng)流程圖 154.4系統(tǒng)功能分析 175系統(tǒng)功能設計 185.1系統(tǒng)功能模塊的設計 185.1.1用戶投票模塊: 185.1.2管理員登錄模塊 195.1.3管理員添加投票工程模塊 205.1.4管理員刪除投票工程模塊: 206數(shù)據(jù)庫設計與實現(xiàn) 216.1數(shù)據(jù)庫結構設計 216.1.1表概要說明 216.1.2數(shù)據(jù)表的結構 217系統(tǒng)的實現(xiàn) 247.1前臺首頁設計 247.2網(wǎng)站導航設計 247.3投票信息展示模塊 257.4用戶注冊模塊設計 267.5網(wǎng)站公告展示 277.6后臺登錄頁面 277.7投票信息管理 307.8公告信息管理 337.9退出后臺管理 358系統(tǒng)測試 368.1測試方法 368.2測試原理、策略 368.3測試過程 368.4系統(tǒng)測試結果 37總結 38致謝 39參考文獻 40附錄 41附錄A外文文獻JSPapplicationframeworks 41附錄B中文翻譯JSP應用框架 501緒論1.1課題來源及意義網(wǎng)上投票調(diào)系統(tǒng)是一種在網(wǎng)站上提出投票題目,由用戶在線投票并對調(diào)查投票的統(tǒng)計結果直接顯示的調(diào)查工具。網(wǎng)站管理方可以通過網(wǎng)上調(diào)查并對投票結果自動進行系統(tǒng)分析后得出有用信息,如瀏覽用戶對某產(chǎn)品或效勞的看法等,是企業(yè)利用網(wǎng)站低本錢進行市場調(diào)查的重要手段。Internet是目前世界上最大的計算機互聯(lián)網(wǎng)絡,它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡連接成一個整體。作為Internet上一種先進的,易于被人們所接受的信息檢索手段,WorldWideWeb(簡稱WWW)開展十分迅速,成為目前世界上最大的信息資源寶庫。如今,網(wǎng)絡技術已經(jīng)滲入到人們?nèi)粘I畹拿總€角落,隨處都可以看到網(wǎng)絡的存在,隨處都可以享受到網(wǎng)絡給我們帶來的方便。網(wǎng)絡,不僅僅代表著一項技術、一種應用,更代表著一個時代、一種時尚。隨著Internet的開展,Web技術日新月異,人們已經(jīng)不再滿足于靜態(tài)HTML技術,更多的是要求動態(tài)、交互的網(wǎng)絡技術。然而,在計算機網(wǎng)絡中,任何方便實用的技術都必須建立在信息平安這塊基石上。一項網(wǎng)絡技術的平安性,也是決定著想技術成敗的關鍵性的性質。而具有動態(tài)驗證的網(wǎng)上投票系統(tǒng)既能使信息的保密性得到保證,又能確認投票者身份的有效性與唯一性,這樣才能保證統(tǒng)計結果的真實有效。網(wǎng)上投票對象只能來源于網(wǎng)絡的使用者,而目前這局部使用者具有一定的特殊性,特別是在中國。據(jù)CNNIC2006年9月公布的調(diào)查結果顯示,我國互聯(lián)網(wǎng)繼續(xù)保持持續(xù)、穩(wěn)定的增長態(tài)勢。其中網(wǎng)民數(shù)、上網(wǎng)計算機數(shù)分別到達了11000萬人、4950萬臺,與上年同期相比分別增長了18.1%和19.0%。在網(wǎng)民的特征結構方面,男性、未婚、30歲以下、大學本科以下、月收入在2000元及以下〔含無收入〕網(wǎng)民的比例依然在網(wǎng)民各特征數(shù)據(jù)中占據(jù)主要地位,所占比例分別為58.7%、57.9%、82.6%、70.8%、70.9%,其中未婚、30歲以上網(wǎng)民的比例與上年同期相比都有所上升,但男性網(wǎng)民比例、大學本科以下、月收入在2000元及以下〔含無收入〕網(wǎng)民所占比例與上年同期相比有所下降;在職業(yè)方面,學生所占比例超過了總網(wǎng)民的三分之一,到達了35.1%,其次是企業(yè)單位工作人員,占總數(shù)的29.6%,排在第三位的是學校教師及行政人員,所占比例為7.3%,國家機關、黨群組織工作人員所占比例為6.6%,事業(yè)單位工作人員所占比例為6.5%,其他職業(yè)的網(wǎng)民所占比例都在5.0%以下。隨著Internet網(wǎng)正在向全世界各大洲延伸和擴散,Internet是一個國際性的通信網(wǎng)絡集合體,它集現(xiàn)代通信技術和現(xiàn)代計算機技術于一體,是計算機之間進行國際信息交流和實現(xiàn)資源共享的良好手段。Internet也是人類歷史開展中的一個偉大的里程碑,它是未來信息高速公路的雛形,人類正由此進入一個前所未有的信息化社會。人們用各種名稱來稱呼Internet,如國際互聯(lián)網(wǎng)絡、因特網(wǎng)、交互網(wǎng)絡、網(wǎng)際網(wǎng)等等,已經(jīng)成為世界上覆蓋面最廣、規(guī)模最大、信息資源最豐富的計算機信息網(wǎng)絡。近年來,借助著Internet的蓬勃開展,伴隨著信息化建設的推進,電子商務迅速崛起,其市場范圍在全球急劇擴大,各興旺國家都把開展電子商務作為拓展全球市場的有效手段,積極地參與協(xié)商和合作。當今社會作為一個飛速開展的社會,網(wǎng)絡已滲入人們的生活,網(wǎng)絡已成為信息傳播的一大媒介,可以說網(wǎng)絡資源的獲取已逐步改變了人們以往的生活方式,網(wǎng)絡已經(jīng)成為人們?nèi)粘9ぷ?,休閑的主要工具之一。從娛樂網(wǎng)站到官方網(wǎng)站,各種網(wǎng)上投票系統(tǒng)隨處可見,意見調(diào)查,用戶信息統(tǒng)計,經(jīng)營情況調(diào)查等都可以作為投票的內(nèi)容,網(wǎng)上投票系統(tǒng)憑借其方便快捷等特點,已經(jīng)成為互聯(lián)網(wǎng)資源中不可缺少的一局部,并且,隨著網(wǎng)絡技術的開展,網(wǎng)上投票系統(tǒng)的作用將會越來越大。并且在投票的過程中網(wǎng)上投票系統(tǒng)對網(wǎng)絡的要求也越來越高。原有的手工投票管理根本上是人工操作,效率低下,缺乏方便性,在線投票管理系統(tǒng)運用計算機和其他附加設備,不再需要手工操作,根本上是全自動化,能夠節(jié)省人力、最大限度地利用各種珍貴的資源,大大的提高了效率。網(wǎng)上投票系統(tǒng)可以快速,真實的反響出你的投票結果和他人的投票結果,而不必等待最終結果。完全的真實性,每個人都可以看見自己的或者他人的投票的增加,防止了以往的暗箱操作。網(wǎng)絡投票系統(tǒng)應具有的獨特的功能其一,方便的操作。原有的手工投票管理根本上是人工操作,效率低下,缺乏方便性,網(wǎng)絡投票管理系統(tǒng)運用計算機和其他附加設備,不再需要手工操作,根本上是全自動化,能夠節(jié)省人力、最大限度地利用各種珍貴的資源,大大的提高了效率。其二,友好的界面。友好的用戶界面會給人一種親切的感覺,在使用起來不會覺得沉悶,效率自然也會提高了。其三,強大的功能,能夠滿足學校教學需要,快速簡單的統(tǒng)計教學任務,提高教學質量。1.2國內(nèi)外開展狀況隨著計算機技術的飛速開展,尤其是網(wǎng)絡技術的超速開展,帶動了信息的廣泛交流,人們每天需要大量的信息來充實自己,傳統(tǒng)的投票和調(diào)查方式已經(jīng)不能滿足我們的需要,針對這種情況,網(wǎng)上投票系統(tǒng)應運而生。網(wǎng)上投票系統(tǒng)除了能夠完成傳統(tǒng)的功能之外,更具有時效高和范圍廣的優(yōu)點,更符合現(xiàn)代社會的需要。從國際互聯(lián)網(wǎng)到校園網(wǎng),企業(yè)局域網(wǎng),各種網(wǎng)上投票系統(tǒng)隨處可見,意見調(diào)查,用戶信息統(tǒng)計,經(jīng)營情況調(diào)查都可以作為投票的內(nèi)容,網(wǎng)上投票系統(tǒng)憑借其方便快捷等特點,已經(jīng)成為互聯(lián)網(wǎng)資源中不可缺少的一局部,并且,隨著網(wǎng)絡技術的開展,網(wǎng)上投票系統(tǒng)的作用將會越來越大。據(jù)新聞報道,日本政府正投資10億日元開發(fā)電子投票系統(tǒng)用于選舉,荷蘭、比利時和巴西等國家已經(jīng)開始在局部地區(qū)使用網(wǎng)上投票系統(tǒng),可見其巨大的開展?jié)摿Α?.3研究目標、內(nèi)容網(wǎng)上投票系統(tǒng)的設計是采用JSP和SQLServer2000技術開發(fā)的簡易投票系統(tǒng),并在用戶登陸過程中設置動態(tài)驗證碼,提高系統(tǒng)的平安性。它實現(xiàn)了以下功能:投票、結果查看、增加、刪除及搜索投票等。本論文首先介紹了網(wǎng)上投票系統(tǒng)的概念及和適用范圍。在系統(tǒng)開發(fā)環(huán)境中主要對JSP、SQL和動態(tài)口令認證機制的根本概念作了詳盡的介紹。接著通過E-R圖說明數(shù)據(jù)庫的搭建和數(shù)據(jù)庫的設計。然后介紹了本系統(tǒng)的總體設計,包括:系統(tǒng)結構和總體功能設計。論文以功能模塊圖的形式說明了功能的設計并給出了局部核心代碼及主要功能界面圖。前臺模塊1.用戶注冊:用戶可以通過這一功能在網(wǎng)站上將自己的信息通過填寫注冊窗體的形式,發(fā)送到后臺數(shù)據(jù)庫中并存儲,以便在網(wǎng)站上進行投票。用戶注冊功能能提高投票信息的公正性和有效性,防止局部人員隨意投票。2.用戶登陸:用戶注冊后就可以在登陸框中輸入正確的用戶名和密碼,,便可登陸到網(wǎng)站。〔1〕進行投票:在“投票選項〞中選中所選類別提交后,所選內(nèi)容會存儲在數(shù)據(jù)庫中,并在投票管理頁面中顯示投票結果?!?〕顯示投票結果:用戶提交投票信息后,數(shù)據(jù)存入數(shù)據(jù)庫并計算出每個投票選項的所得投票數(shù),并將投票數(shù)最多的那一選項的信息顯示到此頁面。后臺模塊:〔1〕管理員登陸:管理登陸之后才能管理投票信息。在此模塊中同樣引入了動態(tài)口令認證以保證平安。〔2〕設計投票管理主界面:當管理員登錄成功后,會轉到投票管理界面。在該界面可以進行以下操作:增加投票,刪除投票,更新投票信息?!?〕增加,修改,刪除投票:添加投票界面是管理員新建投票信息并存儲在數(shù)據(jù)庫中的媒介,并在投票管理界面中顯示。2系統(tǒng)概述與技術介紹作為一個投票網(wǎng)站,首先布局一定要新穎、有特色,只有這樣才能引起用戶的關注,最大限度的滿足人們的需求,而且要有很強的交互性,交互性差的網(wǎng)站會讓用戶產(chǎn)生厭煩情緒。當然一個好的投票網(wǎng)站還要有很完整的處理信息的功能,以便及時的更新網(wǎng)站中的信息。通過對用戶的調(diào)查和對現(xiàn)有的投票網(wǎng)站運行的流程分析,為了滿足大多數(shù)用戶的需求,所以我的目標是要構建一個頁面簡單清晰但包含信息相對全面、交互性強的網(wǎng)上投票系統(tǒng)。2.1B/S結構介紹 本系統(tǒng)采用B/S結構,即Browser/Server(瀏覽器/效勞器)結構,就是只安裝維護一個效勞器(Server),而客戶端采用瀏覽器(Browse)運行軟件。它是隨著Internet技術的興起,對C/S結構的一種變化和改良。主要利用了不斷成熟的WWW瀏覽器技術,結合多種Script語言(VBScript、JavaScript…)和ActiveX技術,是一種全新的軟件系統(tǒng)構造技術。在B/S體系結構系統(tǒng)中,用戶通過瀏覽器向分布在網(wǎng)絡上的許多效勞器發(fā)出請求,效勞器對瀏覽器的請求進行處理,將用戶所需信息返回到瀏覽器。而其余如數(shù)據(jù)請求、加工、結果返回以及動態(tài)網(wǎng)頁生成、對數(shù)據(jù)庫的訪問和應用程序的執(zhí)行等工作全部由WebServer完成。2.2SQLServer數(shù)據(jù)庫因為本系統(tǒng)存放的信息數(shù)據(jù)量比擬大的,因此我選擇存放信息的數(shù)據(jù)庫為微軟的SQLServer數(shù)據(jù)庫。SQLServer是微軟公司推出的基于Windows的桌面關系數(shù)據(jù)庫管理系統(tǒng)〔RDBMS〕,是Office系列應用軟件之一。SQLServer是由Microsoft開發(fā)和推廣的關系數(shù)據(jù)庫管理系統(tǒng)〔DBMS〕,它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個OS/2版本。MicrosoftSQLServer近年來不斷更新版本,1996年,Microsoft推出了SQLServer6.5版本;1998年,SQLServer/7.0版本和用戶見面;SQLServer2005是Microsoft公司于2005年推出,目前最新版本是2021年3月份推出的SQLSERVER2021。2.3MyEclipse介紹本系統(tǒng)是跨越平臺限制和跨越瀏覽器限制的充滿動感的網(wǎng)頁。構建網(wǎng)上投票系統(tǒng)所用的網(wǎng)頁編輯器為MyEclipse,MyEclipse,是一個十分優(yōu)秀的用于開發(fā)Java,J2EE的Eclipse插件集合,MyEclipse的功能非常強大,支持也十分廣泛,尤其是對各種開元產(chǎn)品的支持十分不錯。MyEclipse企業(yè)級工作平臺〔MyEclipseEnterpriseWorkbench,簡稱MyEclipse〕是對EclipseIDE的擴展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布,以及應用程序效勞器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。2.4JavaScrip語言Javascript是一種解釋性的,基于對象的腳本語言,Javascript主要是基于客戶端運行的,用戶點擊帶有Javascript的網(wǎng)頁,網(wǎng)頁里的Javascript就傳到瀏覽器,由瀏覽器對此作處理。它的代碼可以直接嵌入到HTML命令中,最大特點是可以方便操縱網(wǎng)站上的元素,并與Web瀏覽器交互,同時JavaScrip可以捕捉用戶操作并作出反映。JavaScript是一種基于對象和事件驅動并具有相對平安性的客戶端腳本語言。同時也是一種廣泛用于客戶端Web開發(fā)的腳本語言,常用來給HTML網(wǎng)頁添加動態(tài)功能,比方響應用戶的各種操作。JavaScript的一個重要功能就是面向對象的功能,通過基于對象的程序設計,可以用更直觀、模塊化和可重復使用的方式進行程序開發(fā)。在HTML根底上,使用Javascript可以開發(fā)交互式Web網(wǎng)頁。Javascript的出現(xiàn)使得網(wǎng)頁和用戶之間實現(xiàn)了一種實時性的、動態(tài)的、交互性的關系,使網(wǎng)頁包含更多活潑的元素和更加精彩的內(nèi)容。在本系統(tǒng)中很多地方使用了javascript技術,比方說,檢驗用戶輸入數(shù)據(jù)的有效性,是否重復,是否為空等等。2.5JSP技術JSP技術使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于效勞端的資源的應用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設計和顯示別離,支持可重用的基于組件的設計,使基于Web的應用程序的開發(fā)變得迅速和容易。Web效勞器在遇到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序段,然后將執(zhí)行結果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等,以實現(xiàn)建立動態(tài)網(wǎng)頁所需要的功能。JSP與Servlet一樣,是在效勞器端執(zhí)行的,通常返回給客戶端就是一個HTML文本,因此客戶端只要有瀏覽器能瀏覽。JSP頁面由HTML代碼和嵌入其中的Java代碼所組成。效勞器在頁面被客戶端請求以后對這些Java代碼進行處理,然后將生成的HTML頁面返回給客戶端的瀏覽器。Servlet是JSP的技術根底,而且大型的Web應用程序的開發(fā)需要JavaServlet和JSP配合才能完成。JSP具備了Java技術的簡單易用,完全的面向對象,具有平臺無關性且平安可靠,主要面向因特網(wǎng)的所有特點。JSP技術的優(yōu)點:〔1〕一次編寫,到處運行。除了系統(tǒng)之外,代碼不用做任何更改?!?〕系統(tǒng)的多平臺支持。根本上可以在所有平臺上的任意環(huán)境中開發(fā),在任意環(huán)境中進行系統(tǒng)部署,在任意環(huán)境中擴展。相比ASP/.net的局限性是顯而易見的?!?〕強大的可伸縮性。從只有一個小的Jar文件就可以運行Servlet/JSP,到由多臺效勞器進行集群和負載均衡,到多臺Application進行事務處理,消息處理,一臺效勞器到無數(shù)臺效勞器,Java顯示了一個巨大的生命力?!?〕多樣化和功能強大的開發(fā)工具支持。Java已經(jīng)有了許多非常優(yōu)秀的開發(fā)工具,而且許多可以免費得到,并且其中許多已經(jīng)可以順利的運行于多種平臺之下〔5〕支持效勞器端組件。web應用需要強大的效勞器端組件來支持,開發(fā)人員需要利用其他工具設計實現(xiàn)復雜功能的組件供web頁面調(diào)用,以增強系統(tǒng)性能。JSP可以使用成熟的JAVABEANS組件來實現(xiàn)復雜商務功能。內(nèi)部對象說明:request客戶端請求,此請求會包含來自GET/POST請求的參數(shù);response網(wǎng)頁傳回客戶端的響應;pageContext網(wǎng)頁的屬性是在這里管理;session與請求有關的會話;applicationservlet正在執(zhí)行的內(nèi)容;out用來傳送響應的輸出流;config代碼片段配置對象;pageJSP網(wǎng)頁本身;exception針對錯誤網(wǎng)頁,未捕捉的例外。2.6MVC模式為了滿足系統(tǒng)對先進性、平安性、跨平臺性、可擴展性、可移植性、分布式等方面的要求,系統(tǒng)總體架構設計采用先進的基于java的B/S的三層體系結構。MVC是三個單詞的縮寫,分別為:模型(Model),視圖(View)和控制Controller)[9]。MVC模式的目的就是實現(xiàn)Web系統(tǒng)的職能分工。Model層實現(xiàn)系統(tǒng)中的業(yè)務邏輯,通??梢杂肑avaBean或EJB來實現(xiàn)。View層用于與用戶的交互,通常用JSP來實現(xiàn)。Controller層是Model與View之間溝通的橋梁,它可以分派用戶的請求并選擇恰當?shù)囊晥D以用于顯示,同時它也可以解釋用戶的輸入并將它們映射為模型層可執(zhí)行的操作。Web瀏覽技術已經(jīng)廣泛地應用于Internet,并被廣闊用戶接受和使用。Web技術是隨和html一起出現(xiàn)的。Web效勞器利用傳遞html文件,Web瀏覽器使用檢索html文件。Web效勞器一旦檢索到信息,Web瀏覽器就會以靜態(tài)和交互(如文本、圖像)方式顯示各種對象。在電子商務業(yè)務進行過程中,需要在各種貿(mào)易角色之間瀏覽和交換各種信息,此時就要使用Web瀏覽技術。這種模型使系統(tǒng)結構更加清楚,分工更加明確,有利于整個系統(tǒng)后期的維護和升級。MVC(ModelViewController)模型(model)-視圖(view)-控制器(controller)MVC本來是存在于Desktop程序中的,M是指數(shù)據(jù)模型,V是指用戶界面,C那么是控制器。使用MVC的目的是將M和V的實現(xiàn)代碼別離,從而使同一個程序可以使用不同的表現(xiàn)形式。比方一批統(tǒng)計數(shù)據(jù)你可以分別用柱狀圖、餅圖來表示。C存在的目的那么是確保M和V的同步,一旦M改變,V應該同步更新。模型-視圖-控制器(MVC)是XeroxPARC在八十年代為編程語言Smalltalk-80創(chuàng)造的一種軟件設計模式,至今已被廣泛使用。最近幾年被推薦為Oracle旗下Sun公司JavaEE平臺的設計模式,并且受到越來越多的使用ColdFusion和PHP的開發(fā)者的歡送。模型-視圖-控制器模式是一個有用的工具箱,它有很多好處,但也有一些缺點。三層體系結構由瀏覽器、web效勞器和數(shù)據(jù)庫組成,并結合HTML語言、jsp、JavaScript腳本語言、Ajax、ODBC等技術,后臺的數(shù)據(jù)庫采用微軟的SQLServer2005,系統(tǒng)一般的MVC模型如圖2-1所示。圖2-1系統(tǒng)MVC結構圖如圖1-1可知,用戶界面層是用戶和整個系統(tǒng)的接口,客戶端只需安裝通用的瀏覽器即可建立與本系統(tǒng)的連接。業(yè)務邏輯層負責處理用戶輸入的信息,或將這些信息發(fā)送給數(shù)據(jù)庫層進行保存,或調(diào)用數(shù)據(jù)庫層中的函數(shù)再次讀出這些數(shù)據(jù)。數(shù)據(jù)訪問層是整個分層體系的最底層,它主要用來實現(xiàn)與數(shù)據(jù)庫的交互,即完成查詢、插入、刪除和修改數(shù)據(jù)庫中數(shù)據(jù)的功能MVC是一個設計模式,它強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分成三個核心部件:模型、視圖、控制器。它們各自處理自己的任務。分層概念視圖,模型,控制器。視圖是用戶看到并與之交互的界面。對老式的Web應用程序來說,視圖就是由HTML元素組成的界面,在新式的Web應用程序中,HTML依舊在視圖中扮演著重要的角色,但一些新的技術已層出不窮,它們包括MacromediaFlash和象XHTML,XML/XSL,WML等一些標識語言和Webservices。如何處理應用程序的界面變得越來越有挑戰(zhàn)性。MVC一個大的好處是它能為你的應用程序處理很多不同的視圖。在視圖中其實沒有真正的處理發(fā)生,不管這些數(shù)據(jù)是聯(lián)機存儲的還是一個雇員列表,作為視圖來講,它只是作為一種輸出數(shù)據(jù)并允許用戶操縱的方式。模型表示企業(yè)數(shù)據(jù)和業(yè)務規(guī)那么。在MVC的三個部件中,模型擁有最多的處理任務。例如它可能用象EJBs和ColdFusionComponents這樣的構件對象來處理數(shù)據(jù)庫。被模型返回的數(shù)據(jù)是中立的,就是說模型與數(shù)據(jù)格式無關,這樣一個模型能為多個視圖提供數(shù)據(jù)。MVC模型還可以實現(xiàn)軟件工程的高內(nèi)聚,低耦合的終極目標。由于應用于模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重復性??刂破鹘邮苡脩舻妮斎氩⒄{(diào)用模型和視圖去完成用戶的需求。所以當單擊Web頁面中的超鏈接和發(fā)送HTML表單時,控制器本身不輸出任何東西和做任何處理。它只是接收請求并決定調(diào)用哪個模型構件去處理請求自己本身并不參與業(yè)務邏輯處理,然后再確定用哪個視圖來顯示返回的數(shù)據(jù)。MVC的優(yōu)點:1)低耦合性2)高重用性和可適用性3)較低的生命周期本錢4)快速的部署5)可維護性6)有利于軟件工程化管理2.7SSH框架SSH為struts+spring+hibernate的一個集成框架,是目前較流行的一種Web應用程序開源框架。集成SSH框架的系統(tǒng)從職責上分為四層:表示層、業(yè)務邏輯層、數(shù)據(jù)持久層和域模塊層,以幫助開發(fā)人員在短期內(nèi)搭建結構清晰、可復用性好、維護方便的Web應用程序。其中使用Struts作為系統(tǒng)的整體根底架構,負責MVC的別離,在Struts框架的模型局部,控制業(yè)務跳轉,利用Hibernate框架對持久層提供支持,Spring做管理,管理struts和hibernate。具體做法是:用面向對象的分析方法根據(jù)需求提出一些模型,將這些模型實現(xiàn)為根本的Java對象,然后編寫根本的DAO(DataAccessObjects)接口,并給出Hibernate的DAO實現(xiàn),采用Hibernate架構實現(xiàn)的DAO類來實現(xiàn)Java類與數(shù)據(jù)庫之間的轉換和訪問,最后由Spring做管理,管理struts和hibernate。系統(tǒng)的根本業(yè)務流程是:在表示層中,首先通過JSP頁面實現(xiàn)交互界面,負責傳送請求(Request)和接收響應(Response),然后Struts根據(jù)配置文件(struts-config.xml)將ActionServlet接收到的Request委派給相應的Action處理。在業(yè)務層中,管理效勞組件的SpringIoC容器負責向Action提供業(yè)務模型(Model)組件和該組件的協(xié)作對象數(shù)據(jù)處理(DAO)組件完成業(yè)務邏輯,并提供事務處理、緩沖池等容器組件以提升系統(tǒng)性能和保證數(shù)據(jù)的完整性。而在持久層中,那么依賴于Hibernate的對象化映射和數(shù)據(jù)庫交互,處理DAO組件請求的數(shù)據(jù),并返回處理結果。如圖2-2所示:圖2-2SSH框架分層采用上述開發(fā)模型,不僅實現(xiàn)了視圖、控制器與模型的徹底別離,而且還實現(xiàn)了業(yè)務邏輯層與持久層的別離。這樣無論前端如何變化,模型層只需很少的改動,并且數(shù)據(jù)庫的變化也不會對前端有所影響,大大提高了系統(tǒng)的可復用性。而且由于不同層之間耦合度小,有利于團隊成員并行工作,大大提高了開發(fā)效率。Struts框架Struts對Model,View和Controller都提供了對應的組件。ActionServlet,這個類是Struts的核心控制器,負責攔截來自用戶的請求。Action,這個類通常由用戶提供,該控制器負責接收來自ActionServlet的請求,并根據(jù)該請求調(diào)用模型的業(yè)務邏輯方法處理請求,并將處理結果返回給JSP頁面顯示。Model局部:由ActionForm和JavaBean組成,其中ActionForm用于封裝用戶的請求參數(shù),封裝成ActionForm對象,該對象被ActionServlet轉發(fā)給Action,Action根據(jù)ActionForm里面的請求參數(shù)處理用戶的請求。JavaBean那么封裝了底層的業(yè)務邏輯,包括數(shù)據(jù)庫訪問等。View局部:該局部采用JSP〔或HTML、PHP〕實現(xiàn)。Struts提供了豐富的標簽庫,通過標簽庫可以減少腳本的使用,自定義的標簽庫可以實現(xiàn)與Model的有效交互,并增加了現(xiàn)實功能。對應上圖的JSP局部。Controller組件:Controller組件有兩個局部組成——系統(tǒng)核心控制器,業(yè)務邏輯控制器。系統(tǒng)核心控制器,對應上圖的ActionServlet。該控制器由Struts框架提供,繼承Servlet類,因此可以配置成標注的Servlet。該控制器負責攔截所有的請求,然后根據(jù)用戶請求決定是否要轉給業(yè)務邏輯控制器。業(yè)務邏輯控制器,負責處理用戶請求,本身不具備處理能力,而是調(diào)用Model來完成處理。對應Action局部。Spring框架Spring是一個開源框架,它由RodJohnson創(chuàng)立。它是為了解決企業(yè)應用開發(fā)的復雜性而創(chuàng)立的。Spring使用根本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于效勞器端的開發(fā)。從簡單性、可測試性和松耦合的角度而言,任何Java應用都可以從Spring中受益。目的:解決企業(yè)應用開發(fā)的復雜性功能:使用根本的JavaBean代替EJB,并提供了更多的企業(yè)應用功能范圍:任何Java應用簡單來說,Spring是一個輕量級的控制反轉(IoC)和面向切面(AOP)的容器框架。輕量——從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開銷也是微缺乏道的。此外,Spring是非侵入式的:典型地,Spring應用中的對象不依賴于Spring的特定類。控制反轉——Spring通過一種稱作控制反轉〔IoC〕的技術促進了松耦合。當應用了IoC,一個對象依賴的其它對象會通過被動的方式傳遞進來,而不是這個對象自己創(chuàng)立或者查找依賴對象。你可以認為IoC與JNDI相反——不是對象沉著器中查找依賴,而是容器在對象初始化時不等對象請求就主動將依賴傳遞給它。面向切面——Spring提供了面向切面編程的豐富支持,允許通過別離應用的業(yè)務邏輯與系統(tǒng)級效勞〔例如審計〔auditing〕和事務〔transaction〕管理〕進行內(nèi)聚性的開發(fā)。應用對象只實現(xiàn)它們應該做的——完成業(yè)務邏輯——僅此而已。它們并不負責〔甚至是意識〕其它的系統(tǒng)級關注點,例如日志或事務支持。容器——Spring包含并管理應用對象的配置和生命周期,在這個意義上它是一種容器,你可以配置你的每個bean如何被創(chuàng)立——基于一個可配置原型〔prototype〕,你的bean可以創(chuàng)立一個單獨的實例或者每次需要時都生成一個新的實例——以及它們是如何相互關聯(lián)的。然而,Spring不應該被混淆于傳統(tǒng)的重量級的EJB容器,它們經(jīng)常是龐大與笨重的,難以使用??蚣堋猄pring可以將簡單的組件配置、組合成為復雜的應用。在Spring中,應用對象被聲明式地組合,典型地是在一個XML文件里。Spring也提供了很多根底功能〔事務管理、持久化框架集成等等〕,將應用邏輯的開發(fā)留給了你。所有Spring的這些特征使你能夠編寫更干凈、更可管理、并且更易于測試的代碼。它們也為Spring中的各種模塊提供了根底支持。Hibernate框架Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成數(shù)據(jù)持久化的重任。Hibernate的核心接口一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心接口在任何開發(fā)中都會用到。通過這些接口,不僅可以對持久化對象進行存取,還能夠進行事務控制。下面對這五個核心接口分別加以介紹。·Session接口:Session接口負責執(zhí)行被持久化對象的CRUD操作(CRUD的任務是完成與數(shù)據(jù)庫的交流,包含了很多常見的SQL語句。)。但需要注意的是Session對象是非線程平安的。同時,Hibernate的session不同于JSP應用中的Session。這里當使用session這個術語時,其實指的是Hibernate中的session,而以后會將Session對象稱為用戶session?!essionFactory接口:SessionFactory接口負責初始化Hibernate。它充當數(shù)據(jù)存儲源的代理,并負責創(chuàng)立Session對象。這里用到了工廠模式。需要注意的是SessionFactory并不是輕量級的,因為一般情況下,一個工程通常只需要一個SessionFactory就夠,當需要操作多個數(shù)據(jù)庫時,可以為每個數(shù)據(jù)庫指定一個SessionFactory?!onfiguration接口:Configuration接口負責配置并啟動Hibernate,創(chuàng)立SessionFactory對象。在Hibernate的啟動的過程中,Configuration類的實例首先定位映射文檔位置、讀取配置,然后創(chuàng)立SessionFactory對象?!ransaction接口:Transaction接口負責事務相關的操作。它是可選的,開發(fā)人員也可以設計編寫自己的底層事務處理代碼?!uery和Criteria接口:Query和Criteria接口負責執(zhí)行各種數(shù)據(jù)庫查詢。它可以使用HQL語言或SQL語句兩種表達方式。3需求分析3.1開發(fā)環(huán)境本系統(tǒng)的開發(fā)環(huán)境為Windows7,數(shù)據(jù)庫使用的是微軟的SQLServer2005,使用DreamweaverMX2004軟件制作網(wǎng)頁,發(fā)布使用MyEclipse工具。采用JSP為效勞器端腳本環(huán)境,腳本語言使用JavaScript編寫的網(wǎng)上投票系統(tǒng),不需要安裝客戶端程序,客戶端只需安裝瀏覽器即可,使用方便,方便升級維護,方便與Internet和Internet上的應用程序集成。3.2需求分析需求分析是指理解用戶需求,就軟件功能與客戶達成一致,估計軟件風險和評估工程代價,最終形成開發(fā)方案的一個復雜過程。需求分析之所以重要,就因為他具有決策性、方向性、策略性的作用,需求分析是軟件定義的最后一個階段,它的根本任務是答復“系統(tǒng)必須做什么〞這個問題。需求分析的任務不是確定系統(tǒng)怎樣完成他的工作,而僅僅是確定系統(tǒng)完成哪些工作,也就是對目標系統(tǒng)提出完整、準確、清晰、具體的要求,它在軟件開發(fā)的過程中具有舉足輕重的地位。系統(tǒng)初步調(diào)查的主要目標是從系統(tǒng)分析人員和管理人員的角度看新工程開發(fā)有無必要和可能,其根本內(nèi)容包括:系統(tǒng)的根本情況、系統(tǒng)信息處理情況和系統(tǒng)資源情況。伴隨網(wǎng)絡的開展,網(wǎng)民的數(shù)量急劇增加,社會的信息化強度增強,企業(yè)競爭之劇烈,故對市場信息的把握范圍不僅僅是周邊的一些信息,而應把范圍擴展到全國,以至全世界,網(wǎng)絡恰恰是完成這目標的有利工具.對于新產(chǎn)品,新觀點的調(diào)查范圍應當更廣泛,消息應當及時反響給企業(yè)單位,故一個網(wǎng)上在線投票系統(tǒng)應允而生,它正好充分滿意客戶的需求,信息反響的范圍擴大,人力資源的節(jié)省,從而使得企業(yè)在競爭劇烈的市場中擁有更強盛的資本.開發(fā)此投票系統(tǒng)是為了更好的把市場的信息更準確更快速的反響給客戶,使信息的來源更廣泛,從而提高信息的準確性.運用此系統(tǒng)可以降低企業(yè)為市場調(diào)查而消耗的人力和物力,利用節(jié)省的資源提高產(chǎn)品的質量,增強競爭力。獨具匠心的網(wǎng)站規(guī)劃設計就像一幢宏偉的建筑前期的規(guī)劃設計一樣,要進行認真、科學總體規(guī)劃,之后才可以“破土開工〞。3.3可行性分析經(jīng)濟性效勞器端的安裝簡潔明了,客戶機無需再裝任何軟件,通過瀏覽器就可以直接訪問,可以直接接入Internet,無論您身在何處,只要您可以訪問Internet都可以使用本系統(tǒng)。現(xiàn)在的開發(fā)工具都可以在網(wǎng)上免費下載,并且技術上也不存在什么難題,利用現(xiàn)有的開發(fā)工具,就可以對本系統(tǒng)進行開發(fā)。系統(tǒng)本身簡單適用,毫無疑問在經(jīng)濟上是可行的。技術性本系統(tǒng)可用普通的PC,windowsXP,對硬件無很大要求。根本技術需求如下:操作系統(tǒng):WindowsXP及以上效勞器版本;數(shù)據(jù)庫管理系統(tǒng):SQLServer2005;編程工具:MyEclipseMyEclipse開發(fā)語言:Java,主要使用了J2EE的技術java是一種面向對象編程語言,簡單易學而且靈活方便。大學期間就學習了java課程,也系統(tǒng)的了解了J2EE的知識,網(wǎng)上投票系統(tǒng)總體上開發(fā)難度不高,數(shù)據(jù)庫的設計和操作是本系統(tǒng)設計的核心。在大學期間學習過軟件工程,軟件測試,UML統(tǒng)一建模語言等課程,每個學期也會完成對應的課程設計,具備一定的系統(tǒng)分析、設計和測試能力。因此,完成系統(tǒng)實現(xiàn)在技術上完全具有可行性。操作性本系統(tǒng)操作簡單,輸入信息頁面大多數(shù)都是下拉框的選擇形式,在某些頁面,信息可以自動生成,無需輸入,時間的輸入也是用的日歷控件,操作簡便,對用戶的要求很低,只需對WINDOWS操作熟練,而且本系統(tǒng)可視性非常好,所以在技術上不會有很大難度。法律性本系統(tǒng)是自行開發(fā)的管理系統(tǒng),是很有實際意義的系統(tǒng),開發(fā)環(huán)境軟件和使用的數(shù)據(jù)庫都是開源代碼,開發(fā)這個系統(tǒng)不同于開發(fā)普通的系統(tǒng)軟件,不存在侵權等問題..即法律上是可行的。3.4問題分析本在線投票系統(tǒng)具有的特點:其一:方便的操作。原有的手工投票管理根本上是人工操作,效率低下,缺乏方便性,在線投票管理系統(tǒng)運用計算機和其他附加設備,不再需要手工操作,根本上是全自動化能夠節(jié)省人力、最大限度地利用各種珍貴的資源,大大的提高了效率。其二:友好的界面。友好的用戶界面會給人一種親切的感覺,在使用起來不會覺得沉悶,效率自然也會提高了。
其三:強大的功能,網(wǎng)上投票系統(tǒng)可以快速,真實的反響出你的投票結果和他人的投票結果,而不必等待最終結果。其四:完全的真實性,每個人都可以看見自己的或者他人的投票的增加,防止了以往的暗箱操作。3.5分析模型(1)投票首頁模塊:該模塊面向對象為所有訪問頁面用戶,其中包括:管理員和用戶。(2)投票實現(xiàn)模塊:此模塊供用戶對投票工程進行投票所用。不同的用戶具有不同的功能,管理員對問卷內(nèi)容具有增刪改的功能,普通用戶只能在線進行問卷調(diào)查。(3)投票結果模塊:此模塊提供用戶查看該工程已有的投票情況。投票結果顯示面會顯示投票選項的總得票數(shù)。(4)管理員登錄模塊:該模塊用于管理員的登錄。登錄驗證通過以后,管理員才可以對投票信息進行維護。如增刪投票工程。(5)投票管理模塊:此模塊為管理員操作的模塊。管理員登入系統(tǒng)后,可對本系統(tǒng)的所有投票工程進行相應的管理,如:添加投票工程,刪除投票工程。4系統(tǒng)概要設計4.1系統(tǒng)設計概述系統(tǒng)設計是在系統(tǒng)分析的根底上由抽象到具體的過程,同時,還應考慮到系統(tǒng)所實現(xiàn)的內(nèi)外環(huán)境和主客觀條件,本著實事求是的態(tài)度進行這一階段的工作。系統(tǒng)設計階段的主要目的是將系統(tǒng)分析階段所提出的反映用戶信息需求的系統(tǒng)邏輯方案轉換成可以實施的基于計算機與通信系統(tǒng)的物理方案。這一階段的主要任務就是從管理信息系統(tǒng)的總體目標出發(fā),根據(jù)系統(tǒng)分析階段對系統(tǒng)的邏輯功能的要求,并考慮到經(jīng)濟、技術和運行環(huán)境等方面的條件,確定系統(tǒng)的總體結構和系統(tǒng)各組成局部的技術方案,合理選擇計算機和通信的軟、硬件設備,提出系統(tǒng)的實施方案,確保系統(tǒng)總體目標的實現(xiàn)[11]。系統(tǒng)設計工作的特點:1)系統(tǒng)設計階段,大量工作是技術性的。2)允許用戶對已提出的信息需求做非原那么性的修改或補充。3)用戶在操作使用和運行環(huán)境等方面的具體要求也要在系統(tǒng)設計階段加以明確并在系統(tǒng)的技術方案中得反映,因此系統(tǒng)設計人員還要同管理環(huán)境打交道。4)系統(tǒng)設計工作的環(huán)境是管理環(huán)境和技術環(huán)境的結合,是系統(tǒng)設計工作的重要特點也是整個系統(tǒng)成功的一個必不可缺的環(huán)節(jié)。系統(tǒng)設計原那么 1)階段開發(fā)原那么:系統(tǒng)框架和數(shù)據(jù)結構全面設計,具體功能實現(xiàn)分階段進行。 2)易用性原那么:方便上網(wǎng)客戶瀏覽和操作,最大限度地減輕后臺管理人員的負擔,做到局部業(yè)務的自動化處理,提供良好的用戶體驗。 3)業(yè)務完整性原那么:對于業(yè)務進行中的特殊情況能夠做出及時、正確的響應,保證業(yè)務數(shù)據(jù)的完整性,減少數(shù)據(jù)的誤讀。 4)業(yè)務標準化原那么:在系統(tǒng)設計的同時,也為將來的業(yè)務流程制定了較為完善的標準,具有較強的實際操作性,也給整個系統(tǒng)帶來平安性。 5)可擴展性原那么:系統(tǒng)設計要考慮到業(yè)務未來開展的需要,要盡可能設計得簡明,各個功能模塊間的耦合度小,便于系統(tǒng)的擴展。如果存在舊有的數(shù)據(jù)庫系統(tǒng),那么需要充分考慮兼容性,比方說瀏覽器的兼容。4.2系統(tǒng)用例圖普通用戶的操作: 1、用戶注冊。 2、查看最新的投票信息,進行投票操作。會員用例圖,如圖4-1所示:圖4-1普通用戶用例圖管理員的操作:1、管理員可以管理注冊的會員信息。2、管理員可以添加最新投票內(nèi)容。3、管理員可以管理系統(tǒng)公告信息。管理員用例圖,如圖4-2所示: 圖4-2管理員用例圖4.3系統(tǒng)流程圖當會員進入網(wǎng)站首頁之后,如果想要進行投票,先要進行注冊,注冊完成后,才能進行投票操作。根本流程如圖4-3所示。圖4-3會員流程圖當管理員進入本系統(tǒng)之后,管理員首先要登錄之后,才能管理后臺。登錄失敗,給管理員相關的提示,請管理員重新登錄。登錄成功之后,管理員可以對會員、投票信息、公告信息進行管理。管理員的后臺管理的根本流程如下列圖4-4所示:圖4-4管理員流程圖4.4系統(tǒng)功能分析圖4-5系統(tǒng)前臺功能圖 1)這就是本網(wǎng)站前臺的功能框圖(如圖4-5所示)。它可以分為兩個大塊功能,分別為:用戶注冊模塊,用戶投票模塊。下面是兩個模塊的詳細介紹:用戶注冊模塊:通過該模塊完成用戶注冊功能。用戶投票模塊:用戶通過該模塊完成投票操作。圖4-6系統(tǒng)后臺功能圖2)這就是本網(wǎng)站后臺臺的功能框圖(如圖4-6所示)。后臺的所有模塊的功能分析:投票信息模塊:管理投票信息及投票選項。公告管理模塊:管理網(wǎng)站前臺的公告信息。會員信息管理:管理注冊的會員信息。管理員管理:管理后臺的管理員信息。修改個人密碼:管理員登錄系統(tǒng),可以修改自己的登錄密碼。5系統(tǒng)功能設計本系統(tǒng)按照功能邏輯分為五個板塊:投票首頁模塊,投票實現(xiàn)模塊,投票結果模塊,管理員登錄模塊,投票工程管理模塊。具體功能邏輯圖如圖5-1所示:投票普通用戶管理員登陸模塊投票普通用戶管理員登陸模塊投票管理模塊投票首頁模塊管理員信息模塊信息公告模塊投票選項模塊用戶注冊模塊進行投票模塊圖5-1投票系統(tǒng)功能邏輯圖5.1系統(tǒng)功能模塊的設計用戶投票模塊:用戶投票模塊主要實現(xiàn)的是用戶對于投票選項的投票,如圖5-2所示:圖5-2用戶投票模塊管理員登錄模塊此模塊主要實現(xiàn)管理員的登錄設計,如圖5-3所示:圖5-3管理員登錄模塊管理員添加投票工程模塊此模塊實現(xiàn)的是管理員對于投票工程的添加功能,如下列圖5-4所示:圖5-4管理員添加投票工程模塊管理員刪除投票工程模塊:此模塊實現(xiàn)的是管理員對于投票工程進行刪除的設計,如圖5-5所示:圖5-5管理員刪除投票工程模塊6數(shù)據(jù)庫設計與實現(xiàn)6.1數(shù)據(jù)庫結構設計數(shù)據(jù)庫是“按照數(shù)據(jù)結構來組織、存儲和管理數(shù)據(jù)的倉庫〞。作為網(wǎng)絡的一個重要應用,數(shù)據(jù)庫在網(wǎng)站建設中發(fā)揮著重要的作用,與普通網(wǎng)站相對而言,具有數(shù)據(jù)庫功能的網(wǎng)站網(wǎng)頁我們通常稱為動態(tài)頁面,也就是說頁面不是一層不變的,頁面上內(nèi)容〔或局部內(nèi)容〕是動態(tài)生成的,它可以根據(jù)數(shù)據(jù)庫中相應局部內(nèi)容的調(diào)整而變化,使網(wǎng)站內(nèi)容更靈活,維護更方便,更新更便捷。SQLServer數(shù)據(jù)庫作為微軟推出的以標準JET為引擎的桌面型數(shù)據(jù)庫系統(tǒng),由于具有操作簡單、界面友好等特點,具有較大的用戶群體。本系統(tǒng)數(shù)據(jù)庫采用SQLServer數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫名稱為db_toupiao,下面分別給出數(shù)據(jù)表概要說明、主要數(shù)據(jù)表的結構。6.1.1表概要說明系統(tǒng)數(shù)據(jù)庫db_toupiao中含有5張數(shù)據(jù)表,投票信息表t_toupiao、投票選項信息表t_toupiaoxuanxiang、公告信息表t_gonggao、會員信息表t_user、管理員信息表t_admin。6.1.2數(shù)據(jù)表的結構〔1〕t_toupiao(投票信息表)投票信息表示主要用于保存投票項信息,包括投票項名稱,投票項發(fā)起時間等。該表結構如表6-1所示:表6-1t_toupaio的結構字段名數(shù)據(jù)類型長度主鍵否描述idint4是投票項編號titlevarchar50否投票項名稱faqishijiantime4否發(fā)起時間〔2〕t_toupiaoxuanxiang〔投票選項信息表〕投票選項信息表主要用于保存投票選項信息,比方投票信息、內(nèi)容、票數(shù)等,主要字段有類別名稱,該表結構如表6-2所示。表6-2t_toupiaoxuanxiang的結構字段名數(shù)據(jù)類型長度主鍵否描述idint4是自動編號xuangxiangneirongvarchar50否內(nèi)容piaoshuint4否票數(shù)toupiao_idvarchar50否投票信息〔3〕t_gonggao〔公告信息表〕公告信息表主要用于保存公告信息,比方標題、內(nèi)容、發(fā)布時間、發(fā)布人等,主要字段有類別名稱,該表結構如表6-3所示。表6-3t_gonggao的結構字段名數(shù)據(jù)類型長度主鍵否描述gonggao_idint4是自動編號gonggao_titlevarchar50否標題gonggao_contentvarchar50否內(nèi)容gonggao_datavarchar50否發(fā)布時間gonggao_fabuzhevarchar50否發(fā)布人〔4〕t_user〔會員信息表〕會員信息表主要用于保存注冊的會員信息,主要用來存放會員的登錄賬號、登錄密碼、姓名等內(nèi)容。該表結構如表6-4所示。表6-4t_user的結構字段名數(shù)據(jù)類型長度主鍵否描述user_idint4是自動編號user_nameint50否登錄賬號user_pwvarchar50否登錄密碼user_realnamevarchar50否真實姓名user_addressvarchar50否地址user_sexvarchar50否性別user_telvarchar50否聯(lián)系user_emailvarchar50否電子郵件user_qqvarchar50否QQ〔5〕t_admin〔管理員信息表〕管理員信息表主要用于保存管理員的根本信息,該表結構如表6-5所示。表6-5t_admin的結構字段名數(shù)據(jù)類型長度主鍵否描述idint4是自動編號userNamevarchar50否登錄賬號userPwvarchar50否登錄密碼7系統(tǒng)的實現(xiàn)7.1前臺首頁設計前臺首頁是瀏覽者翻開一個網(wǎng)站后第一眼看到的網(wǎng)頁,網(wǎng)站能不能吸引瀏覽者,在很大程度上取決于首頁做得怎么樣。首頁包含內(nèi)容雖然豐富但不雜亂,色彩搭配要合理,整體風格要獨特。網(wǎng)站前臺首頁的運行結果如圖7-1所示。圖7-1網(wǎng)站首頁運行結果7.2網(wǎng)站導航設計導航是網(wǎng)站設計不可缺少的根底元素之一,它不僅是信息結構的根底分類,也是瀏覽者的網(wǎng)站路標,就像一本書或雜志的目錄一樣,但比書籍或雜志的目錄更為重要,因為書籍我們可以一頁一頁的從頭向后翻,而我們的網(wǎng)頁卻不可以,只有有了清楚、明晰的導航,才能讓瀏覽者知道自己身處網(wǎng)站的什么位置。網(wǎng)站導航有很多種,如帶圖標的文字導航、按鈕導航、Flash導航等。網(wǎng)站導航設計效果頁面如圖7-2所示。圖7-2網(wǎng)站導航頁面設計效果7.3投票信息展示模塊投票信息展示模塊的主要功能是讓用戶瀏覽管理員發(fā)布的投票信息,因此投票信息展示模塊主要包括顯示投票列表功能。進入投票列表頁面,頁面中會顯示投票的標題和發(fā)布時間,該頁面的設計效果如圖7-3所示。圖7-3投列表模塊界面設計此頁面的主要代碼是通過調(diào)用index.action的方法index()方法來實現(xiàn)的。該方法的主要功能是查詢數(shù)據(jù)庫,獲取相關的信息,并綁定這些信息,然后傳遞到JSP頁面顯示。顯示投票 列表的代碼主要是: publicStringindex() { Maprequest=(Map)ServletActionContext.getContext().get("request"); Stringsql="fromTToupiaowheredel='no'"; ListtoupiaoList=toupiaoDAO.getHibernateTemplate().find(sql); request.put("toupiaoList",toupiaoList); returnActionSupport.SUCCESS; }然后點擊投票標題超鏈接進入相應的投票頁面,用戶可以在該頁面完成投票操作,但是需要用戶登錄后才能實現(xiàn),執(zhí)行頁面效果如圖7-4。圖7-4用戶投票界面設計7.4用戶注冊模塊設計用戶想要進行投票的話,首先要進行登錄,登錄模塊處于主頁面右方:如圖7-5所示:圖7-5用戶登錄模塊如果是本網(wǎng)站的用戶的的話,可以直接登錄,如果不是,那么需要進行注冊,點擊注冊后會出現(xiàn)如圖7-6注冊頁面圖7-6用戶注冊頁面7.5網(wǎng)站公告展示網(wǎng)站的公告展示位于頁面右側正中的位置,設計效果如圖7-7所示:圖7-7網(wǎng)站公告點擊任意一條網(wǎng)站公告,公告信息就會顯示在左側導航的主頁面上,點擊且行且珍惜后就會出現(xiàn)如圖7-8所示的公告信息;圖7-8網(wǎng)站公告顯示7.6后臺登錄頁面由于網(wǎng)站后臺是用于維護整個網(wǎng)站系統(tǒng),所以必須先要登錄系統(tǒng),才能進行相關的管理操作,當用戶單擊“管理員登錄〞超鏈接時,將彈出確認進入后臺管理頁面的程序窗口,要求用戶輸入正確的用戶名、密碼,二者缺一不可,管理員通過后臺登錄入口進入后臺登錄模塊,后臺登錄模塊主要用于驗證管理員的身份和密碼。后臺登錄模塊的運行效果如圖7-9:圖7-9后臺登錄模塊的設計效果圖判斷管理員身份的相應代碼:publicStringlogin(StringuserName,StringuserPw,intuserType) { try {Thread.sleep(700); }catch(InterruptedExceptione) { //TODOAuto-generatedcatchblock e.printStackTrace(); } Stringresult="no"; if(userType==0)//系統(tǒng)管理員登陸 { Stringsql="select*fromt_adminwhereuserName=?anduserPw=?"; Object[]params={userName,userPw}; DBmydb=newDB(); mydb.doPstm(sql,params); try { ResultSetrs=mydb.getRs(); booleanmark=(rs==null||!rs.next()?false:true); if(mark==false) { result="no"; } else { result="yes"; TAdminadmin=newTAdmin(); admin.setUserId(rs.getInt("userId")); admin.setUserName(rs.getString("userName")); admin.setUserPw(rs.getString("userPw")); WebContextctx=WebContextFactory.get(); Sessionsession=ctx.getSession(); session.setAttribute("userType",0); session.setAttribute("admin",admin); } rs.close(); } catch(SQLExceptione) { System.out.println("登錄失??!"); e.printStackTrace(); } finally { mydb.closed(); } } returnresult; }進入后臺后可以點擊左側投票信息管理、公告信息管理、會員信息管理、管理員管理、個人密碼修改等圖標,進入相應的管理頁面,后臺主頁面如圖7-10。圖7-10后臺主頁面運行結果圖7.7投票信息管理本模塊實現(xiàn)對投票信息的管理操作,包括投票信息的添加、刪除操作。點擊投票信息管理菜單,進入投票信息管理頁面,該頁面通過列表列出已添加的類別信息,包括標題、發(fā)起時間。點擊列表的刪除按鈕,實現(xiàn)投票信息的刪除操作;點擊查看結果,實現(xiàn)當前投票信息結果查看操作。界面設計如圖7-11:圖7-11投票信息管理點擊添加按鈕,進入投票信息添加頁面,輸入符合條件的投票信息,完成投票的添加操作。界面設計如圖7-12:圖7-12投票信息添加點擊查看結果,進入投票信息結果查看頁面,通過圖形化圖表的形式,顯示投票結果。界面設計如圖7-13:圖7-13投票結果查看該模塊的主要功能toupiaoAction類實現(xiàn)的,該類的主要功能是與數(shù)據(jù)庫交互,查詢或保存投票信息,并通過struts.xml配置的內(nèi)容跳轉,翻開相應的jsp頁面。主要代碼是: publicStringtoupiaoAdd() { ServletRequestrequest=Ser
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- (標準)合同結案協(xié)議書
- 解析卷-山東省榮成市七年級上冊有理數(shù)及其運算專題測評試卷(附答案詳解)
- 2024年南陽市公務員考試行測試卷歷年真題有完整答案詳解
- 2024年來賓市公務員考試行測試卷歷年真題及參考答案詳解1套
- 臨期調(diào)味品行業(yè)2025年市場細分領域發(fā)展前景與投資建議研究報告
- 2025年東烏珠穆沁旗醫(yī)療衛(wèi)生領域事業(yè)單位引進急需緊缺人才的模擬試卷及答案詳解(歷年真題)
- 2024煙臺工程職業(yè)技術學院單招考試文化素質數(shù)學能力檢測試卷及參考答案詳解【輕巧奪冠】
- 阿里會議管理制度
- 嚴格會議管理制度
- 長安汽車4s店會議管理制度
- 基孔肯雅熱培訓測試題含答案
- 寫字樓管理辦法
- (標準)摩托車轉讓合同協(xié)議書
- 骨科降低骨科住院患者圍手術期下肢深靜脈血栓發(fā)生率PDCA醫(yī)院改善項目申報書
- 2024年個人信用報告(個人簡版)樣本(帶水印-可編輯)
- 16J914-1 公用建筑衛(wèi)生間
- 風管系統(tǒng)阻力計算表
- 《大數(shù)據(jù)時代下個人隱私信息保護問題研究報告》
- 食品安全自身檢查記錄表
- 5-2020年國家大氣顆粒物組分監(jiān)測工作方案
- 氣瓶檢驗站乙炔瓶檢驗
評論
0/150
提交評論