S2SH投票管理系統(tǒng)設(shè)計(jì)方案_第1頁(yè)
S2SH投票管理系統(tǒng)設(shè)計(jì)方案_第2頁(yè)
S2SH投票管理系統(tǒng)設(shè)計(jì)方案_第3頁(yè)
S2SH投票管理系統(tǒng)設(shè)計(jì)方案_第4頁(yè)
S2SH投票管理系統(tǒng)設(shè)計(jì)方案_第5頁(yè)
已閱讀5頁(yè),還剩53頁(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)介

1、 S2SH投票管理系統(tǒng)設(shè)計(jì)方案S2SH投票管理系統(tǒng)設(shè)計(jì)方案(WORD版完整可編輯,需更多資料請(qǐng)聯(lián)系)摘 要網(wǎng)上投票系統(tǒng)憑借其方便快捷等特點(diǎn)已經(jīng)成為統(tǒng)計(jì)收集信息不可或缺的工具,隨著網(wǎng)絡(luò)技術(shù)的發(fā)展網(wǎng)上投票系統(tǒng)的作用將會(huì)越來(lái)越大。在積極建立科學(xué)管理機(jī)制的今天,僅僅靠原始的手工管理或簡(jiǎn)單的單機(jī)管理,管理部門(mén)面對(duì)大量的信息,無(wú)法有效率地將其中的重要部分提取出來(lái),并做出相應(yīng)的判斷和處理。投票管理者的決策只能依據(jù)手工表數(shù)據(jù),在浪費(fèi)大量人力、物力的同時(shí)無(wú)法做到實(shí)時(shí)監(jiān)控,難以保證數(shù)據(jù)的準(zhǔn)確性和及時(shí)性。因此,先進(jìn)的管理思想就成為了一個(gè)可望而不可及的目標(biāo)。投票非常急需一套既有先進(jìn)管理思想的系統(tǒng),作為實(shí)現(xiàn)目標(biāo)和提高現(xiàn)

2、有投票管理水平的一種重要手段。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,在先進(jìn)的計(jì)算機(jī)技術(shù)、通信技術(shù)、控制技術(shù)及IC卡技術(shù)基礎(chǔ)上,采用系統(tǒng)集成方法,逐步建立一個(gè)智能化的投票系統(tǒng)。本論文就建立一套完善的網(wǎng)上投票系統(tǒng)進(jìn)行了詳細(xì)全面的論述。訪問(wèn)本系統(tǒng)的用戶分為會(huì)員和管理員兩種角色。會(huì)員的主要功能有:查看投票內(nèi)容,網(wǎng)上投票,查看系統(tǒng)公告,在線注冊(cè)會(huì)員模塊。系統(tǒng)中的管理員的主要功能有:投票內(nèi)容管理,公告管理,會(huì)員的管理。關(guān)鍵字: 網(wǎng)上投票系統(tǒng);JSP;S2SHIS2SH Voting Manage

3、ment SystemAbstractThe online voting system by virtue of its convenience, has become an indispensable tool of statistical information collection, along with the development of network technology, the online voting system will play a more important role.Actively establish a scientific management syst

4、em of today, only by the original manual management or simple single management, management department of information, can't efficiently extracted from one of the important part, and make the corresponding judgment and handling. The manager's decision to vote only on the basis of the table d

5、ata by hand, unable to do real-time monitoring in waste a lot of manpower, material resources and at the same time, it is difficult to ensure the accuracy and timeliness of data. Therefore, the advanced management thought becomes a miles away goals. System of voting is in urgent need of an already t

6、o have the advanced management concept, as a goal and an important means to improve the management level of the existing voting. With the continuous improvement of science and technology, computer science increasingly mature, its powerful features for people to have a profound understanding, it has

7、entered the human society in various fields and is playing an increasingly important role. As a part of computer application, the advanced computer technology, communication technology, control technology and IC card technology basis, a systems integration approach, and gradually establish a intelli

8、gent voting system.In this paper, we establish a set of perfect online voting system in detail. Users to access the system is divided into two kinds of role membership and administrator. The main function of membership are: online voting poll, content, view the system announcement, online registrati

9、on module. The main function of the system administrator: voting content management, bulletin management, membership management.Key Words: online voting system; JSP; S2SHII目 錄摘 要IAbstractII1 緒 論11.1 課題來(lái)源及意義11.2 國(guó)內(nèi)外發(fā)展?fàn)顩r21.3 研究目標(biāo)、內(nèi)容21.3.1 前臺(tái)模塊31.3.2 后臺(tái)模塊:32 系統(tǒng)概述與技術(shù)介紹42.1 BS結(jié)構(gòu)介紹42.2 SQL Server數(shù)據(jù)庫(kù)42.3 M

10、yEclipse介紹42.4 JavaScrip語(yǔ)言52.5 JSP技術(shù)52.6 MVC模式62.7 SSH框架82.7.1 Struts框架92.7.2 Spring框架92.7.3 Hibernate框架103 需求分析113.1 開(kāi)發(fā)環(huán)境113.2 需求分析113.3 可行性分析113.3.1 經(jīng)濟(jì)性113.3.2 技術(shù)性123.3.3 操作性123.3.4 法律性123.4 問(wèn)題分析123.5 分析模型134 系統(tǒng)概要設(shè)計(jì)144.1 系統(tǒng)設(shè)計(jì)概述144.2 系統(tǒng)用例圖144.3 系統(tǒng)流程圖154.4 系統(tǒng)功能分析175 系統(tǒng)功能設(shè)計(jì)185.1系統(tǒng)功能模塊的設(shè)計(jì)185.1.1 用戶投票模

11、塊:185.1.2 管理員登錄模塊195.1.3 管理員添加投票項(xiàng)目模塊205.1.4 管理員刪除投票項(xiàng)目模塊:206 數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)216.1 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)216.1.1 表概要說(shuō)明216.1.2 數(shù)據(jù)表的結(jié)構(gòu)217 系統(tǒng)的實(shí)現(xiàn)247.1 前臺(tái)首頁(yè)設(shè)計(jì)247.2 網(wǎng)站導(dǎo)航設(shè)計(jì)247.3 投票信息展示模塊257.4 用戶注冊(cè)模塊設(shè)計(jì)267.5 網(wǎng)站公告展示277.6 后臺(tái)登錄頁(yè)面277.7 投票信息管理307.8 公告信息管理337.9 退出后臺(tái)管理358 系統(tǒng)測(cè)試368.1 測(cè)試方法368.2 測(cè)試原理、策略368.3 測(cè)試過(guò)程368.4 系統(tǒng)測(cè)試結(jié)果37總 結(jié)38參考文獻(xiàn)40附錄41附

12、錄A 外文文獻(xiàn) JSP application frameworks41附錄B 中文翻譯 JSP 應(yīng)用框架5031 緒 論1.1 課題來(lái)源及意義 網(wǎng)上投票調(diào)系統(tǒng)是一種在網(wǎng)站上提出投票題目,由用戶在線投票并對(duì)調(diào)查投票的統(tǒng)計(jì)結(jié)果直接顯示的調(diào)查工具。網(wǎng)站管理方可以通過(guò)網(wǎng)上調(diào)查并對(duì)投票結(jié)果自動(dòng)進(jìn)行系統(tǒng)分析后得出有用信息,如瀏覽用戶對(duì)某產(chǎn)品或服務(wù)的看法等,是企業(yè)利用網(wǎng)站低成本進(jìn)行市場(chǎng)調(diào)查的重要手段。Internet是目前世界上最大的計(jì)算機(jī)互聯(lián)網(wǎng)絡(luò),它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連接成一個(gè)整體。作為Internet上一種先進(jìn)的,易于被人們所接受的信息檢索手段,World Wide Web(簡(jiǎn)稱WWW

13、)發(fā)展十分迅速,成為目前世界上最大的信息資源寶庫(kù)。如今,網(wǎng)絡(luò)技術(shù)已經(jīng)滲入到人們?nèi)粘I畹拿總€(gè)角落,隨處都可以看到網(wǎng)絡(luò)的存在,隨處都可以享受到網(wǎng)絡(luò)給我們帶來(lái)的方便。網(wǎng)絡(luò),不僅僅代表著一項(xiàng)技術(shù)、一種應(yīng)用,更代表著一個(gè)時(shí)代、一種時(shí)尚。隨著Internet的發(fā)展,Web技術(shù)日新月異,人們已經(jīng)不再滿足于靜態(tài)HTML技術(shù),更多的是要求動(dòng)態(tài)、交互的網(wǎng)絡(luò)技術(shù)。然而,在計(jì)算機(jī)網(wǎng)絡(luò)中,任何方便實(shí)用的技術(shù)都必須建立在信息安全這塊基石上。一項(xiàng)網(wǎng)絡(luò)技術(shù)的安全性,也是決定著想技術(shù)成敗的關(guān)鍵性的性質(zhì)。而具有動(dòng)態(tài)驗(yàn)證的網(wǎng)上投票系統(tǒng)既能使信息的保密性得到保證,又能確認(rèn)投票者身份的有效性與唯一性,這樣才能保證統(tǒng)計(jì)結(jié)果的真實(shí)有效。

14、網(wǎng)上投票對(duì)象只能來(lái)源于網(wǎng)絡(luò)的使用者,而目前這部分使用者具有一定的特殊性,特別是在中國(guó)。據(jù)CNNIC 2006年9月公布的調(diào)查結(jié)果顯示,我國(guó)互聯(lián)網(wǎng)繼續(xù)保持持續(xù)、穩(wěn)定的增長(zhǎng)態(tài)勢(shì)。其中網(wǎng)民數(shù)、上網(wǎng)計(jì)算機(jī)數(shù)分別達(dá)到了11000萬(wàn)人、4950萬(wàn)臺(tái),與上年同期相比分別增長(zhǎng)了18.1%和19.0%。在網(wǎng)民的特征結(jié)構(gòu)方面,男性、未婚、30歲以下、大學(xué)本科以下、月收入在2000元及以下(含無(wú)收入)網(wǎng)民的比例依然在網(wǎng)民各特征數(shù)據(jù)中占據(jù)主要地位,所占比例分別為58.7%、57.9%、82.6%、70.8%、70.9%,其中未婚、30歲以上網(wǎng)民的比例與上年同期相比都有所上升,但男性網(wǎng)民比例、大學(xué)本科以下、月收入在20

15、00元及以下(含無(wú)收入)網(wǎng)民所占比例與上年同期相比有所下降;在職業(yè)方面,學(xué)生所占比例超過(guò)了總網(wǎng)民的三分之一,達(dá)到了35.1%,其次是企業(yè)單位工作人員,占總數(shù)的29.6%,排在第三位的是學(xué)校教師及行政人員,所占比例為7.3%,國(guó)家機(jī)關(guān)、黨群組織工作人員所占比例為6.6%,事業(yè)單位工作人員所占比例為6.5%,其他職業(yè)的網(wǎng)民所占比例都在5.0%以下。隨著Internet網(wǎng)正在向全世界各大洲延伸和擴(kuò)散,Internet是一個(gè)國(guó)際性的通信網(wǎng)絡(luò)集合體,它集現(xiàn)代通信技術(shù)和現(xiàn)代計(jì)算機(jī)技術(shù)于一體, 是計(jì)算機(jī)之間進(jìn)行國(guó)際信息交流和實(shí)現(xiàn)資源共享的良好手段。Internet也是人類歷史發(fā)展中的一個(gè)偉大的里程碑,它是未

16、來(lái)信息高速公路的雛形,人類正由此進(jìn)入一個(gè)前所未有的信息化社會(huì)。人們用各種名稱來(lái)稱呼Internet,如國(guó)際互聯(lián)網(wǎng)絡(luò)、因特網(wǎng)、交互網(wǎng)絡(luò)、網(wǎng)際網(wǎng)等等,已經(jīng)成為世界上覆蓋面最廣、規(guī)模最大、信息資源最豐富的計(jì)算機(jī)信息網(wǎng)絡(luò)。近年來(lái),借助著Internet的蓬勃發(fā)展,伴隨著信息化建設(shè)的推進(jìn),電子商務(wù)迅速崛起,其市場(chǎng)范圍在全球急劇擴(kuò)大,各發(fā)達(dá)國(guó)家都把發(fā)展電子商務(wù)作為拓展全球市場(chǎng)的有效手段,積極地參與協(xié)商和合作。當(dāng)今社會(huì)作為一個(gè)飛速發(fā)展的社會(huì),網(wǎng)絡(luò)已滲入人們的生活,網(wǎng)絡(luò)已成為信息傳播的一大媒介,可以說(shuō)網(wǎng)絡(luò)資源的獲取已逐步改變了人們以往的生活方式,網(wǎng)絡(luò)已經(jīng)成為人們?nèi)粘9ぷ鳎蓍e的主要工具之一。從娛樂(lè)網(wǎng)站到官方網(wǎng)

17、站,各種網(wǎng)上投票系統(tǒng)隨處可見(jiàn),意見(jiàn)調(diào)查,用戶信息統(tǒng)計(jì),經(jīng)營(yíng)情況調(diào)查等都可以作為投票的內(nèi)容,網(wǎng)上投票系統(tǒng)憑借其方便快捷等特點(diǎn),已經(jīng)成為互聯(lián)網(wǎng)資源中不可缺少的一部分,并且,隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)上投票系統(tǒng)的作用將會(huì)越來(lái)越大。并且在投票的過(guò)程中網(wǎng)上投票系統(tǒng)對(duì)網(wǎng)絡(luò)的要求也越來(lái)越高。原有的手工投票管理基本上是人工操作,效率低下,缺乏方便性,在線投票管理系統(tǒng)運(yùn)用計(jì)算機(jī)和其他附加設(shè)備,不再需要手工操作,基本上是全自動(dòng)化,能夠節(jié)省人力、最大限度地利用各種寶貴的資源,大大的提高了效率。網(wǎng)上投票系統(tǒng)可以快速,真實(shí)的反應(yīng)出你的投票結(jié)果和他人的投票結(jié)果,而不必等待最終結(jié)果。完全的真實(shí)性,每個(gè)人都可以看見(jiàn)自己的或者他人

18、的投票的增加,防止了以往的暗箱操作。網(wǎng)絡(luò)投票系統(tǒng)應(yīng)具有的獨(dú)特的功能其一,方便的操作。原有的手工投票管理基本上是人工操作,效率低下,缺乏方便性,網(wǎng)絡(luò)投票管理系統(tǒng)運(yùn)用計(jì)算機(jī)和其他附加設(shè)備,不再需要手工操作,基本上是全自動(dòng)化,能夠節(jié)省人力、最大限度地利用各種寶貴的資源,大大的提高了效率。 其二,友好的界面。友好的用戶界面會(huì)給人一種親切的感覺(jué),在使用起來(lái)不會(huì)覺(jué)得沉悶,效率自然也會(huì)提高了。其三,強(qiáng)大的功能,能夠滿足學(xué)校教學(xué)需要,快速簡(jiǎn)單的統(tǒng)計(jì)教學(xué)任務(wù),提高教學(xué)質(zhì)量。1.2 國(guó)內(nèi)外發(fā)展?fàn)顩r隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,尤其是網(wǎng)絡(luò)技術(shù)的超速發(fā)展,帶動(dòng)了信息的廣泛交流,人們每天需要大量的信息來(lái)充實(shí)自己,傳統(tǒng)的投票

19、和調(diào)查方式已經(jīng)不能滿足我們的需要,針對(duì)這種情況,網(wǎng)上投票系統(tǒng)應(yīng)運(yùn)而生。網(wǎng)上投票系統(tǒng)除了能夠完成傳統(tǒng)的功能之外,更具有時(shí)效高和范圍廣的優(yōu)點(diǎn),更符合現(xiàn)代社會(huì)的需要。從國(guó)際互聯(lián)網(wǎng)到校園網(wǎng),企業(yè)局域網(wǎng),各種網(wǎng)上投票系統(tǒng)隨處可見(jiàn),意見(jiàn)調(diào)查,用戶信息統(tǒng)計(jì),經(jīng)營(yíng)情況調(diào)查都可以作為投票的內(nèi)容,網(wǎng)上投票系統(tǒng)憑借其方便快捷等特點(diǎn),已經(jīng)成為互聯(lián)網(wǎng)資源中不可缺少的一部分,并且,隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)上投票系統(tǒng)的作用將會(huì)越來(lái)越大。據(jù)新聞報(bào)道,日本政府正投資10億日元開(kāi)發(fā)電子投票系統(tǒng)用于選舉,荷蘭、比利時(shí)和巴西等國(guó)家已經(jīng)開(kāi)始在部分地區(qū)使用網(wǎng)上投票系統(tǒng),可見(jiàn)其巨大的發(fā)展?jié)摿Α?.3 研究目標(biāo)、內(nèi)容 網(wǎng)上投票系統(tǒng)的設(shè)計(jì)是采用

20、JSP和SQL Server2000技術(shù)開(kāi)發(fā)的簡(jiǎn)易投票系統(tǒng),并在用戶登陸過(guò)程中設(shè)置動(dòng)態(tài)驗(yàn)證碼,提高系統(tǒng)的安全性。它實(shí)現(xiàn)了以下功能:投票、結(jié)果查看、增加、刪除及搜索投票等。本論文首先介紹了網(wǎng)上投票系統(tǒng)的概念及和適用范圍。在系統(tǒng)開(kāi)發(fā)環(huán)境中主要對(duì)JSP、SQL和動(dòng)態(tài)口令認(rèn)證機(jī)制的基本概念作了詳盡的介紹。接著通過(guò)E-R圖說(shuō)明數(shù)據(jù)庫(kù)的搭建和數(shù)據(jù)庫(kù)的設(shè)計(jì)。然后介紹了本系統(tǒng)的總體設(shè)計(jì),包括:系統(tǒng)結(jié)構(gòu)和總體功能設(shè)計(jì)。論文以功能模塊圖的形式說(shuō)明了功能的設(shè)計(jì)并給出了部分核心代碼及主要功能界面圖。1.3.1 前臺(tái)模塊1用戶注冊(cè):用戶可以通過(guò)這一功能在網(wǎng)站上將自己的信息通過(guò)填寫(xiě)注冊(cè)窗體的形式,發(fā)送到后臺(tái)數(shù)據(jù)庫(kù)中并存儲(chǔ)

21、,以便在網(wǎng)站上進(jìn)行投票。用戶注冊(cè)功能能提高投票信息的公正性和有效性,防止部分人員隨意投票。2.用戶登陸:用戶注冊(cè)后就可以在登陸框中輸入正確的用戶名和密碼,便可登陸到網(wǎng)站。(1)進(jìn)行投票:在“投票選項(xiàng)”中選中所選類別提交后,所選內(nèi)容會(huì)存儲(chǔ)在數(shù)據(jù)庫(kù)中,并在投票管理頁(yè)面中顯示投票結(jié)果。(2)顯示投票結(jié)果:用戶提交投票信息后,數(shù)據(jù)存入數(shù)據(jù)庫(kù)并計(jì)算出每個(gè)投票選項(xiàng)的所得投票數(shù),并將投票數(shù)最多的那一選項(xiàng)的信息顯示到此頁(yè)面。1.3.2 后臺(tái)模塊:(1)管理員登陸:管理登陸之后才能管理投票信息。在此模塊中同樣引入了動(dòng)態(tài)口令認(rèn)證以保證安全。(2)設(shè)計(jì)投票管理主界面:當(dāng)管理員登錄成功后,會(huì)轉(zhuǎn)到投票管理界面。在該界面

22、可以進(jìn)行以下操作:增加投票,刪除投票,更新投票信息。(3)增加,修改,刪除投票:添加投票界面是管理員新建投票信息并存儲(chǔ)在數(shù)據(jù)庫(kù)中的媒介,并在投票管理界面中顯示。2 系統(tǒng)概述與技術(shù)介紹作為一個(gè)投票網(wǎng)站,首先布局一定要新穎、有特色,只有這樣才能引起用戶的關(guān)注,最大限度的滿足人們的需求,而且要有很強(qiáng)的交互性,交互性差的網(wǎng)站會(huì)讓用戶產(chǎn)生厭煩情緒。當(dāng)然一個(gè)好的投票網(wǎng)站還要有很完整的處理信息的功能,以便及時(shí)的更新網(wǎng)站中的信息。通過(guò)對(duì)用戶的調(diào)查和對(duì)現(xiàn)有的投票網(wǎng)站運(yùn)行的流程分析,為了滿足大多數(shù)用戶的需求,所以我的目標(biāo)是要構(gòu)建一個(gè)頁(yè)面簡(jiǎn)單清晰但包含信息相對(duì)全面、交互性強(qiáng)的網(wǎng)上投票系統(tǒng)。2.1 BS結(jié)構(gòu)介紹本系統(tǒng)

23、采用BS結(jié)構(gòu),即BrowserServer(瀏覽器服務(wù)器)結(jié)構(gòu),就是只安裝維護(hù)一個(gè)服務(wù)器(Server),而客戶端采用瀏覽器(Browse)運(yùn)行軟件。它是隨著Internet技術(shù)的興起,對(duì)CS結(jié)構(gòu)的一種變化和改進(jìn)。主要利用了不斷成熟的WWW瀏覽器技術(shù),結(jié)合多種Script語(yǔ)言(VBScript、JavaScript)和ActiveX技術(shù),是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。 在BS體系結(jié)構(gòu)系統(tǒng)中,用戶通過(guò)瀏覽器向分布在網(wǎng)絡(luò)上的許多服務(wù)器發(fā)出請(qǐng)求,服務(wù)器對(duì)瀏覽器的請(qǐng)求進(jìn)行處理,將用戶所需信息返回到瀏覽器。而其余如數(shù)據(jù)請(qǐng)求、加工、結(jié)果返回以及動(dòng)態(tài)網(wǎng)頁(yè)生成、對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)和應(yīng)用程序的執(zhí)行等工作全部由Web

24、 Server完成。2.2 SQL Server數(shù)據(jù)庫(kù)因?yàn)楸鞠到y(tǒng)存放的信息數(shù)據(jù)量比較大的,因此我選擇存放信息的數(shù)據(jù)庫(kù)為微軟的SQL Server數(shù)據(jù)庫(kù)。SQL Server是微軟公司推出的基于Windows的桌面關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),是Office系列應(yīng)用軟件之一。SQL Server是由Microsoft開(kāi)發(fā)和推廣的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開(kāi)發(fā)的,并于1988年推出了第一個(gè)OS/2版本。Microsoft SQL Server近年來(lái)不斷更新版本,1996年,Microsoft 推出了SQL Se

25、rver 6.5版本;1998年,SQL Server /7.0版本和用戶見(jiàn)面;SQL Server 2005是Microsoft公司于2005年推出,目前最新版本是2012年3月份推出的SQL SERVER 2012。2.3 MyEclipse介紹本系統(tǒng)是跨越平臺(tái)限制和跨越瀏覽器限制的充滿動(dòng)感的網(wǎng)頁(yè)。構(gòu)建網(wǎng)上投票系統(tǒng)所用的網(wǎng)頁(yè)編輯器為MyEclipse, MyEclipse,是一個(gè)十分優(yōu)秀的用于開(kāi)發(fā)Java, J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對(duì)各種開(kāi)元產(chǎn)品的支持十分不錯(cuò)。MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enter

26、prise Workbench ,簡(jiǎn)稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開(kāi)發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL, Hibernate。2.4 JavaScrip語(yǔ)言Javascript是一種解釋性的,基于對(duì)象的腳本語(yǔ)言,Javascript主要是基于客戶端運(yùn)行的,用戶點(diǎn)擊帶有Javascript的網(wǎng)頁(yè),網(wǎng)頁(yè)里的Javascript就傳到瀏覽器,由瀏覽器

27、對(duì)此作處理。它的代碼可以直接嵌入到HTML命令中,最大特點(diǎn)是可以方便操縱網(wǎng)站上的元素,并與Web瀏覽器交互,同時(shí)JavaScrip可以捕捉用戶操作并作出反映。JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語(yǔ)言。同時(shí)也是一種廣泛用于客戶端Web開(kāi)發(fā)的腳本語(yǔ)言,常用來(lái)給HTML網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。JavaScript的一個(gè)重要功能就是面向?qū)ο蟮墓δ?,通過(guò)基于對(duì)象的程序設(shè)計(jì),可以用更直觀、模塊化和可重復(fù)使用的方式進(jìn)行程序開(kāi)發(fā)。在HTML基礎(chǔ)上,使用Javascript可以開(kāi)發(fā)交互式Web網(wǎng)頁(yè)。Javascript的出現(xiàn)使得網(wǎng)頁(yè)和用戶之間實(shí)現(xiàn)了一種實(shí)時(shí)性

28、的、動(dòng)態(tài)的、交互性的關(guān)系,使網(wǎng)頁(yè)包含更多活躍的元素和更加精彩的內(nèi)容。在本系統(tǒng)中很多地方使用了javascript技術(shù),比如說(shuō),檢驗(yàn)用戶輸入數(shù)據(jù)的有效性,是否重復(fù),是否為空等等。2.5 JSP技術(shù)JSP技術(shù)使用Java編程語(yǔ)言編寫(xiě)類XML的tags和scriptlets,來(lái)封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和scriptlets訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開(kāi)發(fā)變得迅速和容易。 Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起

29、返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。JSP與Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端就是一個(gè)HTML文本,因此客戶端只要有瀏覽器能瀏覽。JSP頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返回給客戶端的瀏覽器。Servlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開(kāi)發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο?,具有平臺(tái)無(wú)關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。JSP技術(shù)的

30、優(yōu)點(diǎn):(1)一次編寫(xiě),到處運(yùn)行。除了系統(tǒng)之外,代碼不用做任何更改。 (2)系統(tǒng)的多平臺(tái)支持?;旧峡梢栽谒衅脚_(tái)上的任意環(huán)境中開(kāi)發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP/.net的局限性是顯而易見(jiàn)的。 (3)強(qiáng)大的可伸縮性。從只有一個(gè)小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺(tái)服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺(tái)Application進(jìn)行事務(wù)處理,消息處理,一臺(tái)服務(wù)器到無(wú)數(shù)臺(tái)服務(wù)器,Java顯示了一個(gè)巨大的生命力。 (4)多樣化和功能強(qiáng)大的開(kāi)發(fā)工具支持。Java已經(jīng)有了許多非常優(yōu)秀的開(kāi)發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺(tái)之下(5)支持

31、服務(wù)器端組件。web應(yīng)用需要強(qiáng)大的服務(wù)器端組件來(lái)支持,開(kāi)發(fā)人員需要利用其他工具設(shè)計(jì)實(shí)現(xiàn)復(fù)雜功能的組件供web頁(yè)面調(diào)用,以增強(qiáng)系統(tǒng)性能。JSP可以使用成熟的JAVA BEANS 組件來(lái)實(shí)現(xiàn)復(fù)雜商務(wù)功能。內(nèi)部對(duì)象說(shuō)明:request 客戶端請(qǐng)求,此請(qǐng)求會(huì)包含來(lái)自GET/POST請(qǐng)求的參數(shù); response網(wǎng)頁(yè)傳回客戶端的響應(yīng);pageContext 網(wǎng)頁(yè)的屬性是在這里管理; session 與請(qǐng)求有關(guān)的會(huì)話; application servlet正在執(zhí)行的內(nèi)容;out 用來(lái)傳送響應(yīng)的輸出流; config代碼片段配置對(duì)象;pageJSP網(wǎng)頁(yè)本身; exception針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外。

32、2.6 MVC模式為了滿足系統(tǒng)對(duì)先進(jìn)性、安全性、跨平臺(tái)性、可擴(kuò)展性、可移植性、分布式等方面的要求,系統(tǒng)總體架構(gòu)設(shè)計(jì)采用先進(jìn)的基于java的B/S的三層體系結(jié)構(gòu)。MVC是三個(gè)單詞的縮寫(xiě),分別為: 模型(Model),視圖(View)和控制Controller)9。 MVC模式的目的就是實(shí)現(xiàn)Web系統(tǒng)的職能分工。Model層實(shí)現(xiàn)系統(tǒng)中的業(yè)務(wù)邏輯,通常可以用JavaBean或EJB來(lái)實(shí)現(xiàn)。 View層用于與用戶的交互,通常用JSP來(lái)實(shí)現(xiàn)。 Controller層是Model與View之間溝通的橋梁,它可以分派用戶的請(qǐng)求并選擇恰當(dāng)?shù)囊晥D以用于顯示,同時(shí)它也可以解釋用戶的輸入并將它們映射為模型層可執(zhí)行的

33、操作。Web瀏覽技術(shù)已經(jīng)廣泛地應(yīng)用于Internet,并被廣大用戶接受和使用。Web技術(shù)是隨http和html一起出現(xiàn)的。Web服務(wù)器利用http傳遞html文件,Web瀏覽器使用http檢索html文件。Web服務(wù)器一旦檢索到信息,Web瀏覽器就會(huì)以靜態(tài)和交互(如文本、圖像)方式顯示各種對(duì)象。在電子商務(wù)業(yè)務(wù)進(jìn)行過(guò)程中,需要在各種貿(mào)易角色之間瀏覽和交換各種信息,此時(shí)就要使用Web瀏覽技術(shù)。 這種模型使系統(tǒng)結(jié)構(gòu)更加清楚,分工更加明確,有利于整個(gè)系統(tǒng)后期的維護(hù)和升級(jí)。MVC(Model View Controller)模型(model)視圖(view)控制器(controller)MVC本來(lái)是存在

34、于Desktop程序中的,M是指數(shù)據(jù)模型,V是指用戶界面,C則是控制器。使用MVC 的目的是將M和V的實(shí)現(xiàn)代碼分離,從而使同一個(gè)程序可以使用不同的表現(xiàn)形式。比如一批統(tǒng)計(jì)數(shù)據(jù)你可以分別用柱狀圖、餅圖來(lái)表示。C存在的目的則是確保M和V的同步,一旦M改變,V應(yīng)該同步更新。模型視圖控制器(MVC)是Xerox PARC在八十年代為編程語(yǔ)言Smalltalk80發(fā)明的一種軟件設(shè)計(jì)模式,至今已被廣泛使用。最近幾年被推薦為Oracle旗下Sun公司Java EE平臺(tái)的設(shè)計(jì)模式,并且受到越來(lái)越多的使用 ColdFusion 和 PHP 的開(kāi)發(fā)者的歡迎。模型視圖控制器模式是一個(gè)有用的工具箱,它有很多好處,但也有

35、一些缺點(diǎn)。 三層體系結(jié)構(gòu)由瀏覽器、web服務(wù)器和數(shù)據(jù)庫(kù)組成,并結(jié)合HTML語(yǔ)言、jsp、JavaScript腳本語(yǔ)言、Ajax、ODBC等技術(shù),后臺(tái)的數(shù)據(jù)庫(kù)采用微軟的SQL Server 2005,系統(tǒng)一般的MVC模型如圖2-1所示。 圖2-1 系統(tǒng)MVC結(jié)構(gòu)圖如圖1-1可知,用戶界面層是用戶和整個(gè)系統(tǒng)的接口,客戶端只需安裝通用的瀏覽器即可建立與本系統(tǒng)的連接。業(yè)務(wù)邏輯層負(fù)責(zé)處理用戶輸入的信息,或?qū)⑦@些信息發(fā)送給數(shù)據(jù)庫(kù)層進(jìn)行保存,或調(diào)用數(shù)據(jù)庫(kù)層中的函數(shù)再次讀出這些數(shù)據(jù)。數(shù)據(jù)訪問(wèn)層是整個(gè)分層體系的最底層,它主要用來(lái)實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的交互,即完成查詢、插入、刪除和修改數(shù)據(jù)庫(kù)中數(shù)據(jù)的功能MVC是一個(gè)設(shè)計(jì)模

36、式,它強(qiáng)制性的使應(yīng)用程序的輸入、處理和輸出分開(kāi)。使用MVC應(yīng)用程序被分成三個(gè)核心部件:模型、視圖、控制器。它們各自處理自己的任務(wù)。分層概念視圖,模型,控制器。視圖是用戶看到并與之交互的界面。對(duì)老式的Web應(yīng)用程序來(lái)說(shuō),視圖就是由HTML元素組成的界面,在新式的Web應(yīng)用程序中,HTML依舊在視圖中扮演著重要的角色,但一些新的技術(shù)已層出不窮,它們包括Macromedia Flash和象XHTML,XML/XSL,WML等一些標(biāo)識(shí)語(yǔ)言和Web services。如何處理應(yīng)用程序的界面變得越來(lái)越有挑戰(zhàn)性。MVC一個(gè)大的好處是它能為你的應(yīng)用程序處理很多不同的視圖。在視圖中其實(shí)沒(méi)有真正的處理發(fā)生,不管這

37、些數(shù)據(jù)是聯(lián)機(jī)存儲(chǔ)的還是一個(gè)雇員列表,作為視圖來(lái)講,它只是作為一種輸出數(shù)據(jù)并允許用戶操縱的方式。模型表示企業(yè)數(shù)據(jù)和業(yè)務(wù)規(guī)則。在MVC的三個(gè)部件中,模型擁有最多的處理任務(wù)。例如它可能用象EJBs和ColdFusion Components這樣的構(gòu)件對(duì)象來(lái)處理數(shù)據(jù)庫(kù)。被模型返回的數(shù)據(jù)是中立的,就是說(shuō)模型與數(shù)據(jù)格式無(wú)關(guān),這樣一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù)。MVC模型還可以實(shí)現(xiàn)軟件工程的高內(nèi)聚,低耦合的終極目標(biāo)。由于應(yīng)用于模型的代碼只需寫(xiě)一次就可以被多個(gè)視圖重用,所以減少了代碼的重復(fù)性??刂破鹘邮苡脩舻妮斎氩⒄{(diào)用模型和視圖去完成用戶的需求。所以當(dāng)單擊Web頁(yè)面中的超鏈接和發(fā)送HTML表單時(shí),控制器本身不輸

38、出任何東西和做任何處理。它只是接收請(qǐng)求并決定調(diào)用哪個(gè)模型構(gòu)件去處理請(qǐng)求自己本身并不參與業(yè)務(wù)邏輯處理,然后再確定用哪個(gè)視圖來(lái)顯示返回的數(shù)據(jù)。MVC的優(yōu)點(diǎn):1)低耦合性2)高重用性和可適用性3)較低的生命周期成本4)快速的部署5)可維護(hù)性6)有利于軟件工程化管理2.7 SSH框架SSH 為 struts+spring+hibernate的一個(gè)集成框架,是目前較流行的一種Web應(yīng)用程序開(kāi)源框架。集成SSH框架的系統(tǒng)從職責(zé)上分為四層:表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層和域模塊層,以幫助開(kāi)發(fā)人員在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的Web應(yīng)用程序。其中使用Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)MVC

39、的分離,在Struts框架的模型部分,控制業(yè)務(wù)跳轉(zhuǎn),利用Hibernate框架對(duì)持久層提供支持,Spring做管理,管理struts和hibernate。具體做法是:用面向?qū)ο蟮姆治龇椒ǜ鶕?jù)需求提出一些模型,將這些模型實(shí)現(xiàn)為基本的Java對(duì)象,然后編寫(xiě)基本的DAO(Data Access Objects)接口,并給出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。系統(tǒng)的基本業(yè)務(wù)流程是: 在表示層中,首先通過(guò)JSP頁(yè)面實(shí)現(xiàn)交互界面,負(fù)責(zé)傳送請(qǐng)求(Request)和接收

40、響應(yīng)(Response),然后Struts根據(jù)配置文件(struts-config.xml)將ActionServlet接收到的Request委派給相應(yīng)的Action處理。在業(yè)務(wù)層中,管理服務(wù)組件的Spring IoC容器負(fù)責(zé)向Action提供業(yè)務(wù)模型(Model)組件和該組件的協(xié)作對(duì)象數(shù)據(jù)處理(DAO)組件完成業(yè)務(wù)邏輯,并提供事務(wù)處理、緩沖池等容器組件以提升系統(tǒng)性能和保證數(shù)據(jù)的完整性。而在持久層中,則依賴于Hibernate的對(duì)象化映射和數(shù)據(jù)庫(kù)交互,處理DAO組件請(qǐng)求的數(shù)據(jù),并返回處理結(jié)果。如圖2-2所示:圖2-2 SSH框架分層采用上述開(kāi)發(fā)模型,不僅實(shí)現(xiàn)了視圖、控制器與模型的徹底分離,而且

41、還實(shí)現(xiàn)了業(yè)務(wù)邏輯層與持久層的分離。這樣無(wú)論前端如何變化,模型層只需很少的改動(dòng),并且數(shù)據(jù)庫(kù)的變化也不會(huì)對(duì)前端有所影響,大大提高了系統(tǒng)的可復(fù)用性。而且由于不同層之間耦合度小,有利于團(tuán)隊(duì)成員并行工作,大大提高了開(kāi)發(fā)效率。2.7.1 Struts框架Struts對(duì)Model,View和Controller都提供了對(duì)應(yīng)的組件。ActionServlet,這個(gè)類是Struts的核心控制器,負(fù)責(zé)攔截來(lái)自用戶的請(qǐng)求。Action,這個(gè)類通常由用戶提供,該控制器負(fù)責(zé)接收來(lái)自ActionServlet的請(qǐng)求,并根據(jù)該請(qǐng)求調(diào)用模型的業(yè)務(wù)邏輯方法處理請(qǐng)求,并將處理結(jié)果返回給JSP頁(yè)面顯示。Model部分:由Actio

42、nForm和JavaBean組成,其中ActionForm用于封裝用戶的請(qǐng)求參數(shù),封裝成ActionForm對(duì)象,該對(duì)象被ActionServlet轉(zhuǎn)發(fā)給Action,Action根據(jù)ActionForm里面的請(qǐng)求參數(shù)處理用戶的請(qǐng)求。JavaBean則封裝了底層的業(yè)務(wù)邏輯,包括數(shù)據(jù)庫(kù)訪問(wèn)等。View部分:該部分采用JSP(或HTML、PHP)實(shí)現(xiàn)。Struts提供了豐富的標(biāo)簽庫(kù),通過(guò)標(biāo)簽庫(kù)可以減少腳本的使用,自定義的標(biāo)簽庫(kù)可以實(shí)現(xiàn)與Model的有效交互,并增加了現(xiàn)實(shí)功能。對(duì)應(yīng)上圖的JSP部分。Controller組件:Controller組件有兩個(gè)部分組成系統(tǒng)核心控制器,業(yè)務(wù)邏輯控制器。系統(tǒng)核

43、心控制器,對(duì)應(yīng)上圖的ActionServlet。該控制器由Struts框架提供,繼承HttpServlet類,因此可以配置成標(biāo)注的Servlet。該控制器負(fù)責(zé)攔截所有的HTTP請(qǐng)求,然后根據(jù)用戶請(qǐng)求決定是否要轉(zhuǎn)給業(yè)務(wù)邏輯控制器。業(yè)務(wù)邏輯控制器,負(fù)責(zé)處理用戶請(qǐng)求,本身不具備處理能力,而是調(diào)用Model來(lái)完成處理。對(duì)應(yīng)Action部分。2.7.2 Spring框架Spring是一個(gè)開(kāi)源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開(kāi)發(fā)。從簡(jiǎn)單性、可測(cè)

44、試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。目的:解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性功能:使用基本的JavaBean代替EJB,并提供了更多的企業(yè)應(yīng)用功能范圍:任何Java應(yīng)用簡(jiǎn)單來(lái)說(shuō),Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。輕量從大小與開(kāi)銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個(gè)大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開(kāi)銷也是微不足道的。此外,Spring是非侵入式的:典型地,Spring應(yīng)用中的對(duì)象不依賴于Spring的特定類??刂品崔D(zhuǎn)Spring通過(guò)一種稱作控制反轉(zhuǎn)(IoC)的技術(shù)促進(jìn)了松耦

45、合。當(dāng)應(yīng)用了IoC,一個(gè)對(duì)象依賴的其它對(duì)象會(huì)通過(guò)被動(dòng)的方式傳遞進(jìn)來(lái),而不是這個(gè)對(duì)象自己創(chuàng)建或者查找依賴對(duì)象。你可以認(rèn)為IoC與JNDI相反不是對(duì)象從容器中查找依賴,而是容器在對(duì)象初始化時(shí)不等對(duì)象請(qǐng)求就主動(dòng)將依賴傳遞給它。面向切面Spring提供了面向切面編程的豐富支持,允許通過(guò)分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù)(例如審計(jì)(auditing)和事務(wù)(transaction)管理)進(jìn)行內(nèi)聚性的開(kāi)發(fā)。應(yīng)用對(duì)象只實(shí)現(xiàn)它們應(yīng)該做的完成業(yè)務(wù)邏輯僅此而已。它們并不負(fù)責(zé)(甚至是意識(shí))其它的系統(tǒng)級(jí)關(guān)注點(diǎn),例如日志或事務(wù)支持。容器Spring包含并管理應(yīng)用對(duì)象的配置和生命周期,在這個(gè)意義上它是一種容器,你可以配置你的

46、每個(gè)bean如何被創(chuàng)建基于一個(gè)可配置原型(prototype),你的bean可以創(chuàng)建一個(gè)單獨(dú)的實(shí)例或者每次需要時(shí)都生成一個(gè)新的實(shí)例以及它們是如何相互關(guān)聯(lián)的。然而,Spring不應(yīng)該被混同于傳統(tǒng)的重量級(jí)的EJB容器,它們經(jīng)常是龐大與笨重的,難以使用??蚣躍pring可以將簡(jiǎn)單的組件配置、組合成為復(fù)雜的應(yīng)用。在Spring中,應(yīng)用對(duì)象被聲明式地組合,典型地是在一個(gè)XML文件里。Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等等),將應(yīng)用邏輯的開(kāi)發(fā)留給了你。所有Spring的這些特征使你能夠編寫(xiě)更干凈、更可管理、并且更易于測(cè)試的代碼。它們也為Spring中的各種模塊提供了基礎(chǔ)支持。2.7

47、.3 Hibernate框架Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。Hibernate的核心接口一共有5個(gè),分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個(gè)核心接口在任

48、何開(kāi)發(fā)中都會(huì)用到。通過(guò)這些接口,不僅可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。下面對(duì)這五個(gè)核心接口分別加以介紹。·Session接口:Session接口負(fù)責(zé)執(zhí)行被持久化對(duì)象的CRUD操作(CRUD的任務(wù)是完成與數(shù)據(jù)庫(kù)的交流,包含了很多常見(jiàn)的SQL語(yǔ)句。)。但需要注意的是Session對(duì)象是非線程安全的。同時(shí),Hibernate的session不同于JSP應(yīng)用中的HttpSession。這里當(dāng)使用session這個(gè)術(shù)語(yǔ)時(shí),其實(shí)指的是Hibernate中的session,而以后會(huì)將HttpSession對(duì)象稱為用戶session。·SessionFactory接口:Sess

49、ionFactory接口負(fù)責(zé)初始化Hibernate。它充當(dāng)數(shù)據(jù)存儲(chǔ)源的代理,并負(fù)責(zé)創(chuàng)建Session對(duì)象。這里用到了工廠模式。需要注意的是SessionFactory并不是輕量級(jí)的,因?yàn)橐话闱闆r下,一個(gè)項(xiàng)目通常只需要一個(gè)SessionFactory就夠,當(dāng)需要操作多個(gè)數(shù)據(jù)庫(kù)時(shí),可以為每個(gè)數(shù)據(jù)庫(kù)指定一個(gè)SessionFactory。·Configuration接口:Configuration接口負(fù)責(zé)配置并啟動(dòng)Hibernate,創(chuàng)建SessionFactory對(duì)象。在Hibernate的啟動(dòng)的過(guò)程中,Configuration類的實(shí)例首先定位映射文檔位置、讀取配置,然后創(chuàng)建Sessi

50、onFactory對(duì)象。·Transaction接口:Transaction接口負(fù)責(zé)事務(wù)相關(guān)的操作。它是可選的,開(kāi)發(fā)人員也可以設(shè)計(jì)編寫(xiě)自己的底層事務(wù)處理代碼。·Query和Criteria接口:Query和Criteria接口負(fù)責(zé)執(zhí)行各種數(shù)據(jù)庫(kù)查詢。它可以使用HQL語(yǔ)言或SQL語(yǔ)句兩種表達(dá)方式。3 需求分析3.1 開(kāi)發(fā)環(huán)境本系統(tǒng)的開(kāi)發(fā)環(huán)境為Windows 7,數(shù)據(jù)庫(kù)使用的是微軟的SQL Server 2005,使用Dreamweaver MX 2004軟件制作網(wǎng)頁(yè),發(fā)布使用MyEclipse工具。采用JSP為服務(wù)器端腳本環(huán)境,腳本語(yǔ)言使用JavaScript編寫(xiě)的網(wǎng)上投票系

51、統(tǒng),不需要安裝客戶端程序,客戶端只需安裝瀏覽器即可,使用方便,方便升級(jí)維護(hù),方便與Internet和Internet上的應(yīng)用程序集成。3.2 需求分析需求分析是指理解用戶需求,就軟件功能與客戶達(dá)成一致,估計(jì)軟件風(fēng)險(xiǎn)和評(píng)估項(xiàng)目代價(jià),最終形成開(kāi)發(fā)計(jì)劃的一個(gè)復(fù)雜過(guò)程。需求分析之所以重要,就因?yàn)樗哂袥Q策性、方向性、策略性的作用,需求分析是軟件定義的最后一個(gè)階段,它的基本任務(wù)是回答“系統(tǒng)必須做什么” 這個(gè)問(wèn)題。需求分析的任務(wù)不是確定系統(tǒng)怎樣完成他的工作,而僅僅是確定系統(tǒng)完成哪些工作,也就是對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求,它在軟件開(kāi)發(fā)的過(guò)程中具有舉足輕重的地位。系統(tǒng)初步調(diào)查的主要目標(biāo)是從系統(tǒng)

52、分析人員和管理人員的角度看新項(xiàng)目開(kāi)發(fā)有無(wú)必要和可能,其基本內(nèi)容包括:系統(tǒng)的基本情況、系統(tǒng)信息處理情況和系統(tǒng)資源情況。伴隨網(wǎng)絡(luò)的發(fā)展,網(wǎng)民的數(shù)量急劇增加,社會(huì)的信息化強(qiáng)度增強(qiáng),企業(yè)競(jìng) 爭(zhēng)之激烈,故對(duì)市場(chǎng)信息的把握范圍不僅僅是周邊的一些信息,而應(yīng)把范圍擴(kuò)展到全國(guó),以至全世界,網(wǎng)絡(luò)恰恰是完成這目標(biāo)的有利工具.對(duì)于新產(chǎn)品,新觀點(diǎn)的調(diào)查范圍應(yīng)當(dāng)更廣泛,消息應(yīng)當(dāng)及時(shí)反饋給企業(yè)單位,故一個(gè)網(wǎng)上在線投票系統(tǒng)應(yīng)允而生,它正好充分滿意客戶的需求,信息反饋的范圍擴(kuò)大,人力資源的節(jié)省,從而使得企業(yè)在競(jìng)爭(zhēng)激烈的市場(chǎng)中擁有更強(qiáng)盛的資本.開(kāi)發(fā)此投票系統(tǒng)是為了更好的把市場(chǎng)的信息更準(zhǔn)確更快速的反饋給客戶,使信息的來(lái)源更廣泛,從

53、而提高信息的準(zhǔn)確性.運(yùn)用此系統(tǒng)可以降低企業(yè)為市場(chǎng)調(diào)查而消耗的人力和物力,利用節(jié)省的資源提高產(chǎn)品的質(zhì)量,增強(qiáng)競(jìng)爭(zhēng)力。獨(dú)具匠心的網(wǎng)站規(guī)劃設(shè)計(jì)就像一幢宏偉的建筑前期的規(guī)劃設(shè)計(jì)一樣,要進(jìn)行認(rèn)真、科學(xué)總體規(guī)劃,之后才可以“破土動(dòng)工”。3.3 可行性分析3.3.1 經(jīng)濟(jì)性服務(wù)器端的安裝簡(jiǎn)潔明了,客戶機(jī)無(wú)需再裝任何軟件,通過(guò)瀏覽器就可以直接訪問(wèn),可以直接接入Internet,無(wú)論您身在何處,只要您可以訪問(wèn)Internet都可以使用本系統(tǒng)?,F(xiàn)在的開(kāi)發(fā)工具都可以在網(wǎng)上免費(fèi)下載,并且技術(shù)上也不存在什么難題,利用現(xiàn)有的開(kāi)發(fā)工具,就可以對(duì)本系統(tǒng)進(jìn)行開(kāi)發(fā)。系統(tǒng)本身簡(jiǎn)單適用,毫無(wú)疑問(wèn)在經(jīng)濟(jì)上是可行的。3.3.2 技術(shù)性本

54、系統(tǒng)可用普通的PC,windows XP ,對(duì)硬件無(wú)很大要求。基本技術(shù)需求如下:(1) 操作系統(tǒng):Windows XP及以上服務(wù)器版本;(2) 數(shù)據(jù)庫(kù)管理系統(tǒng):SQL Server2005;(3) 編程工具:MyEclipseMyEclipse(4) 開(kāi)發(fā)語(yǔ)言:Java, 主要使用了J2EE的技術(shù)java是一種面向?qū)ο缶幊陶Z(yǔ)言,簡(jiǎn)單易學(xué)而且靈活方便。大學(xué)期間就學(xué)習(xí)了java課程,也系統(tǒng)的了解了J2EE的知識(shí),網(wǎng)上投票系統(tǒng)總體上開(kāi)發(fā)難度不高,數(shù)據(jù)庫(kù)的設(shè)計(jì)和操作是本系統(tǒng)設(shè)計(jì)的核心。在大學(xué)期間學(xué)習(xí)過(guò)軟件工程,軟件測(cè)試,UML統(tǒng)一建模語(yǔ)言等課程,每個(gè)學(xué)期也會(huì)完成對(duì)應(yīng)的課程設(shè)計(jì),具備一定的系統(tǒng)分析、設(shè)計(jì)

55、和測(cè)試能力。因此,完成系統(tǒng)實(shí)現(xiàn)在技術(shù)上完全具有可行性。3.3.3 操作性本系統(tǒng)操作簡(jiǎn)單,輸入信息頁(yè)面大多數(shù)都是下拉框的選擇形式,在某些頁(yè)面,信息可以自動(dòng)生成,無(wú)需輸入,時(shí)間的輸入也是用的日歷控件,操作簡(jiǎn)便,對(duì)用戶的要求很低,只需對(duì)WINDOWS操作熟練,而且本系統(tǒng)可視性非常好,所以在技術(shù)上不會(huì)有很大難度。3.3.4 法律性本系統(tǒng)是自行開(kāi)發(fā)的管理系統(tǒng),是很有實(shí)際意義的系統(tǒng),開(kāi)發(fā)環(huán)境軟件和使用的數(shù)據(jù)庫(kù)都是開(kāi)源代碼,開(kāi)發(fā)這個(gè)系統(tǒng)不同于開(kāi)發(fā)普通的系統(tǒng)軟件,不存在侵權(quán)等問(wèn)題.即法律上是可行的。3.4 問(wèn)題分析本在線投票系統(tǒng)具有的特點(diǎn):其一:方便的操作。原有的手工投票管理基本上是人工操作,效率低下,缺乏方

56、便性,在線投票管理系統(tǒng)運(yùn)用計(jì)算機(jī)和其他附加設(shè)備,不再需要手工操作,基本上是全自動(dòng)化能夠節(jié)省人力、最大限度地利用各種寶貴的資源,大大的提高了效率。其二:友好的界面。友好的用戶界面會(huì)給人一種親切的感覺(jué),在使用起來(lái)不會(huì)覺(jué)得沉悶,效率自然也會(huì)提高了。 其三:強(qiáng)大的功能,網(wǎng)上投票系統(tǒng)可以快速,真實(shí)的反應(yīng)出你的投票結(jié)果和他人的投票結(jié)果,而不必等待最終結(jié)果。其四:完全的真實(shí)性,每個(gè)人都可以看見(jiàn)自己的或者他人的投票的增加,防止了以往的暗箱操作。3.5 分析模型(1) 投票首頁(yè)模塊:該模塊面向?qū)ο鬄樗性L問(wèn)頁(yè)面用戶,其中包括:管理員和用戶。(2) 投票實(shí)現(xiàn)模塊:此模塊供用戶對(duì)投票項(xiàng)目進(jìn)行投票所用。不同的用戶具有不同的功能,管理員對(duì)問(wèn)卷內(nèi)容具有增刪改的功能,普通用戶只能在線進(jìn)行問(wèn)卷調(diào)查。(3) 投票結(jié)果模塊:此模塊提供用戶查看該項(xiàng)目已有的投票情況。投票結(jié)果顯示面會(huì)顯示投票選項(xiàng)的總得票數(shù)。(4) 管理員登錄模塊:該模塊用于管理員的登錄。登錄驗(yàn)證通過(guò)以后,管理員才可以對(duì)投票信息進(jìn)行維護(hù)。如增刪投票項(xiàng)目。(5) 投票管理模塊:此模塊為管理員操作的模塊。管理員登入系統(tǒng)后,可對(duì)本系統(tǒng)的所有投票項(xiàng)目進(jìn)行相應(yīng)的管理,如:添加投票項(xiàng)目,刪除投票項(xiàng)目。4 系統(tǒng)概要設(shè)計(jì)4.1 系統(tǒng)設(shè)計(jì)概述系統(tǒng)設(shè)計(jì)是在系統(tǒng)分析的基礎(chǔ)上由抽象到具體的過(guò)程,同時(shí),還應(yīng)考慮到系統(tǒng)所實(shí)現(xiàn)的內(nèi)外環(huán)境和主客觀條件,

溫馨提示

  • 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)論