基于JavaEE綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)論文_第1頁
基于JavaEE綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)論文_第2頁
基于JavaEE綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)論文_第3頁
基于JavaEE綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)論文_第4頁
基于JavaEE綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)論文_第5頁
已閱讀5頁,還剩77頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 / 82工程碩士專業(yè)學(xué)位論文(設(shè)計)工程碩士專業(yè)學(xué)位論文(設(shè)計)題題 目目基于基于 JavaJava EEEE 綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)I / 82基于基于 JavaJava EEEE 綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)綜合調(diào)查系統(tǒng)的設(shè)計與實現(xiàn)軟件工程領(lǐng)域 研究生:指導(dǎo)老師:研究生:指導(dǎo)老師:摘摘 要要問卷調(diào)查是一種常見的研究手段,當(dāng)研究者要研究某個問題或者分析某種現(xiàn)象時,往往會通過問卷調(diào)查的形式收集數(shù)據(jù),然后再整理分析從而得出結(jié)論。傳統(tǒng)的問卷調(diào)查方式都是采用紙質(zhì)問卷收集數(shù)據(jù)。近年來互聯(lián)網(wǎng)基礎(chǔ)平臺的迅猛發(fā)展 ,基于互聯(lián)網(wǎng)的各種應(yīng)用也日益受到人們的重視。采用計算機軟件技術(shù)實現(xiàn)信

2、息化的問卷調(diào)查,取代傳統(tǒng)的紙質(zhì)問卷調(diào)查方式,是計算機信息化應(yīng)用研究的一個重要方向?;?Java EE 綜合調(diào)查系統(tǒng)的研究就是作者在該研究方向上所做的一點嘗試,該系統(tǒng)是一個集問卷設(shè)計、用戶數(shù)據(jù)導(dǎo)入、用戶參與問卷調(diào)查、統(tǒng)計問卷調(diào)查結(jié)果等功能為一體的信息管理平臺。該系統(tǒng)是在 Java EE 平臺上搭建的 Web 項目,采用了當(dāng)前市面上流行的組合框架 SSH(Struts+Spring+Hibernate)開發(fā)技術(shù)。在系統(tǒng)開發(fā)過程中,完成了問卷信息管理、問卷問題編輯、參與者賬戶導(dǎo)入、匹配問卷與參與者、問卷答案統(tǒng)計、參與問卷調(diào)查、查看答卷信息、系統(tǒng)登錄和權(quán)限管理等功能模塊的編碼開發(fā)。該系統(tǒng)采用 ecl

3、ipse 作為開發(fā)工具,選用 MySQL 為后臺數(shù)據(jù)庫,Tomcat 為 Web 服務(wù)器。系統(tǒng)采用 MVC 三層架構(gòu)模式搭建,分為表示層、業(yè)務(wù)層和持久層,全部業(yè)務(wù)邏輯均在業(yè)務(wù)層實現(xiàn),持久層開發(fā)采用 Hibernate 框架進行管理,采用 C3P0 數(shù)據(jù)庫連接池連接數(shù)據(jù)庫,能夠非常便利地更換數(shù)據(jù)庫。II / 82由于 Java 技術(shù)良好的跨平臺性能,系統(tǒng)能夠在不同操作系統(tǒng)的服務(wù)器環(huán)境下運行。綜合問卷調(diào)查系統(tǒng)的部署和運行,能夠有效地利用網(wǎng)絡(luò)資源,通過網(wǎng)絡(luò)答題的方式完成問卷調(diào)查,減少了人力物力的投入,解決了傳統(tǒng)問卷調(diào)查的弊端。關(guān)鍵詞:問卷調(diào)查;關(guān)鍵詞:問卷調(diào)查;B/SB/S;JavaJava;SSH

4、SSH;開源框架;開源框架DesignDesign andand ApplicationApplication ofof JavaJava EEEE IntegratedIntegrated SurveySurvey SystemSystemThe field of software engineeringGraduateGraduate Student:Student: Adviser:Adviser:AbstractAbstractQuestionnaire is a common means of researching. When researchers want to study a

5、 problem or analyze some phenomenon, they often collect data by using questionnaire, then analyze the data to get a conclusion. The traditional means of questionnaire is paper-based to collect data. In recent years, the construction of internet-based platform is developing quickly, and people pay at

6、tention to applications based on internet increasingly. Using computer software technology to achieve information questionnaire, to replace traditional paper-based questionnaire, is a significant research direction of computer information technology. The research of questionnaire survey system based

7、 on Java EE is an attempt on the direction. Integrated Survey SyIII / 82stem is an information management platform in which a set of questionnaire design,user data leading-in, user participation, statistical survey results and other functions are integrated. The system is a Web project built on Java

8、 EE platform, employing the SSH, one of the most popular combination framework. During the developing process , the coding and developing of modules including questionnaire information management, questionnaire editing , accouts leading-in, matching questionnaire and participants, the statistics of

9、answers, participating questionnaire survey, checking the answers , system loading and authority management has been accomplished. The system is based on the eclipse as a development tool, MySQL as the database, Tomcat as the Web server. System architecture is divided into the presentation layer, bu

10、siness layer and data persistence layer. The business logic is implemented in the business layer, and data persistence layer is managed by Hibernate framework, using C3P0 connection pool database to connect database to replace the database conveniently. Due to good cross-platform performance of Java

11、 technology, the system can function by servers equipped with different operating systems.The deployment and operation of integrated survey system can effectively utilize network resources. Conducting the questionnaire by internet can reduce the input of manpower and material resources, thus solving

12、 drawbacks of traditional questionnaire.Keywords:Keywords: QuestionnaireQuestionnaire survey;survey; B/S;B/S; Java;Java; SSH;SSH; OpenOpen sourcesource frameworkframework目目 錄錄IV / 821 1 緒論緒論 1 11.1 引言 11.2 國外研究現(xiàn)狀 21.3 本文工作 22 2 相關(guān)理論介紹相關(guān)理論介紹 4 42.1 引言 42.2 B/S 模式介紹 42.3 JAVA技術(shù)概述 62.4 WEB服務(wù)器介紹 72.5 集成

13、開發(fā)環(huán)境介紹 82.6 WEB框架介紹 82.6.1 SSH 體系框架結(jié)構(gòu) 92.6.2 Struts2 框架介紹 102.6.3 Spring 框架介紹 102.6.4 Hibernate 框架介紹 112.7 小結(jié) 113 3 系統(tǒng)需求分析與總體設(shè)計系統(tǒng)需求分析與總體設(shè)計 13133.1 引言 133.2 系統(tǒng)需求分析 133.3 系統(tǒng)功能分析 143.4 系統(tǒng)總體設(shè)計 173.4.1 系統(tǒng)總體目標(biāo) 173.4.2 系統(tǒng)整體流程 173.4.3 系統(tǒng)運行環(huán)境 193.5 小結(jié) 204 4 系統(tǒng)具體設(shè)計與實現(xiàn)系統(tǒng)具體設(shè)計與實現(xiàn) 21214.1 引言 214.2 數(shù)據(jù)庫設(shè)計 214.2.1 數(shù)

14、據(jù)模型介紹 224.2.2 數(shù)據(jù)字典 234.3 功能模塊設(shè)計 304.3.1 問卷信息管理 324.3.2 問卷問題編輯 414.3.3 導(dǎo)入?yún)⑴c者用戶 484.3.4 匹配問卷和參與者 51V / 824.3.5 參與問卷調(diào)查 524.3.6 問卷答案統(tǒng)計 574.3.7 查看答卷信息 604.4 小結(jié) 635 5 系統(tǒng)測試與分析系統(tǒng)測試與分析 64645.1 引言 645.2 系統(tǒng)功能測試與分析 645.2.1 系統(tǒng)管理員登錄測試 655.2.2 問卷信息編輯功能測試 675.2.3 問卷問題編輯功能測試 705.2.4 參與者賬戶導(dǎo)入功能測試 735.2.5 匹配問卷與參與者功能測試

15、745.2.6 答卷功能測試 755.2.7 問卷答案統(tǒng)計功能測試 756 6 結(jié)論結(jié)論 7777參考文獻參考文獻 7878聲明聲明 8080致致 81811 / 821 1 緒論緒論1.11.1 引言引言研究者在從事社會課題研究的時候,往往需要收集人們對于某個社會現(xiàn)象的看法,通過對這些數(shù)據(jù)的分析來得出調(diào)查研究結(jié)論。數(shù)據(jù)收集最常用的手段就是采用問卷調(diào)查的方式。問卷調(diào)查是一種發(fā)掘事實現(xiàn)況的研究方式,最大的目的是搜集、累積某一目標(biāo)族群的各項科學(xué)教育屬性的基本資料,可分為描述性研究與分析性研究兩大類1。傳統(tǒng)的問卷調(diào)查方式主要是通過書面提出問題的形式向特定的人員群體收集資料,其過程分為三個步驟。首先是

16、問卷設(shè)計者將研究的問題編制成問卷調(diào)查表格形式,然后通過紙質(zhì)的材料印刷后再發(fā)放給參與答卷人員進行問卷填寫,最后收集答卷人員填寫好的問卷通過人工的方式統(tǒng)計問卷結(jié)果,以此來了解參與調(diào)查人員對某種現(xiàn)象或問題的看法和意見。整個過程全部依靠人工來進行,存在以下缺點。第一、收集的信息都記錄在紙質(zhì)問卷上,不方便保存和查看;第二、問卷的發(fā)放和收集浪費了大量的人力和物力;第三、問卷的制作使用了大量的紙,是對資源的浪費;第四、問卷的統(tǒng)計完全依靠人工,可能會造成統(tǒng)計的誤差。改變傳統(tǒng)的問卷調(diào)查方式,提高問卷調(diào)查的效率和速率成為很多機構(gòu)的一大難題。近年來,隨著計算機網(wǎng)絡(luò)在人們?nèi)粘I钪械娜找嫫张c,通過計算機網(wǎng)絡(luò)進行大圍高

17、密度的問卷調(diào)查已經(jīng)成為可能2?;谟嬎銠C網(wǎng)絡(luò)的問卷調(diào)查方式逐漸取代了傳統(tǒng)的問卷調(diào)查方式成為了問卷調(diào)查首選的方法。這種問卷調(diào)查方式相對于傳統(tǒng)的問卷調(diào)查方式有幾大優(yōu)點。第一、問卷的設(shè)計相對比較方便;第二、問卷參與者直接通過網(wǎng)絡(luò)可以參與問卷的填寫,不需要花費大量的人力物力去分發(fā)和收集問卷;第三、繁重的問卷答案統(tǒng)計工作交給計算機進行處理,從而避免了人工統(tǒng)計可能造成的誤差和人力資源浪費。2 / 821.21.2 國外研究現(xiàn)狀國外研究現(xiàn)狀當(dāng)今社會信息技術(shù)飛速發(fā)展,各種專業(yè)領(lǐng)域的應(yīng)用型如雨后春筍般在互聯(lián)網(wǎng)上出現(xiàn),其中就包括了很多綜合性的問卷調(diào)查3。目前國在 Web 問卷調(diào)查方面好評度高的有問卷星、OQSS

18、與愛調(diào)研等專業(yè)問卷調(diào)查,這些問卷調(diào)查功能非常強大,能夠針對不同的用戶類型提供專業(yè)的問卷調(diào)查服務(wù)。提供了問卷設(shè)計功能,問卷問題類型多樣化,包含單選題、多選題、填空題、單選補充題、多選補充題等;同時還提供了強大的數(shù)據(jù)分析功能,能夠幫助用戶分析收集的數(shù)據(jù)。從滿足用戶需求的角度來看,這類專業(yè)的問卷調(diào)查完全能夠滿足幾乎所有用戶的需求。雖然互聯(lián)網(wǎng)上的問卷調(diào)查能夠為用戶提供完整的 Web 問卷調(diào)查服務(wù),各種功能能夠滿足用戶的需求,但是還是存在以下兩點問題。第一、調(diào)查問卷的答卷權(quán)限問題。這些公共的問卷調(diào)查,對參與問卷調(diào)查的用戶權(quán)限控制功能較弱,無法限制和問卷無關(guān)的人員參與問卷調(diào)查,可能產(chǎn)生部分不準確的答卷信息

19、,從而影響最終的統(tǒng)計結(jié)果的真實性。第二、調(diào)查問卷的答卷數(shù)據(jù)存儲在問卷調(diào)查運營商的數(shù)據(jù)庫中,答卷數(shù)據(jù)的安全性得不到保證。當(dāng)問卷中涉與到一些個人信息問題如、家庭住址、工作單位和個人收入情況等,被調(diào)查者會擔(dān)心這些信息被泄露。開發(fā)一套問卷調(diào)查系統(tǒng)可以從根本上解決上述問題。首先,可以通過權(quán)限控制的功能讓被調(diào)查者通過登錄驗證之后才能參與問卷調(diào)查。其次,系統(tǒng)部署在本單位的服務(wù)器上,所有的問卷與答卷數(shù)據(jù)也存儲在服務(wù)器的數(shù)據(jù)庫中,避免用戶數(shù)據(jù)被公共問卷調(diào)查泄露。1.31.3 本文工作本文工作課題研發(fā)的主要目的是統(tǒng)計職業(yè)技術(shù)院校畢業(yè)生就業(yè)信息。由于畢業(yè)生的工作地點分布在不同的省市,利用郵寄、或 的方式收集畢業(yè)生信

20、息難度太大。綜合問卷調(diào)查系統(tǒng)的研發(fā)就是為了解決上述問題,以互聯(lián)網(wǎng)為平臺來完成畢業(yè)生就業(yè)信息收集的工作。綜合問卷調(diào)查系統(tǒng)是一個基于 Java EE 平臺的 Web 項目,功能模塊采用SSH 集成框架進行開發(fā),靜態(tài)頁面采用 DIV+CSS 頁面布局技術(shù)進行設(shè)計。SSH集成框架是由 struts、spring 和 hibernate 三大框架組合而成,首要完成的3 / 82工作就是這三大框架的無縫整合,然后在 SSH 框架的基礎(chǔ)上進行系統(tǒng)的功能模塊開發(fā)。綜合問卷調(diào)查系統(tǒng)按照軟件開發(fā)的標(biāo)準流程進行開發(fā),項目開發(fā)周期為半年,共分為四個階段。第一階段是系統(tǒng)的需求分析階段。在需求分析這個階段,通過與用戶的溝

21、通和交流,了解用戶對系統(tǒng)的功能要求,從用戶的角度描述系統(tǒng)的所有功能。第二階段是系統(tǒng)整體設(shè)計階段。在此階段確定系統(tǒng)達到的總體設(shè)計目標(biāo),描述整個系統(tǒng)工作的流程,確定系統(tǒng)的集成開發(fā)環(huán)境和運行的軟硬件環(huán)境。第三階段是系統(tǒng)的具體設(shè)計開發(fā)實現(xiàn)階段。這個階段中首先完成系統(tǒng)的具體設(shè)計方案,采用數(shù)據(jù)庫設(shè)計軟件 PowerDesigner 完成系統(tǒng)的用例圖開發(fā),設(shè)計數(shù)據(jù)庫模型并生成數(shù)據(jù)庫表。然后把系統(tǒng)所有功能分為八個不同的功能模塊,詳細介紹每個功能模塊的開發(fā)過程,并附上控制器的核心代碼。在開發(fā)系統(tǒng)功能模塊的同時,使用 DIV+CSS 技術(shù)設(shè)計制作系統(tǒng)所需的靜態(tài)頁面,對每個輸入頁面采用 Jquery 框架的 Val

22、idate 插件進行輸入信息驗證。第四階段是系統(tǒng)的測試階段。雖然在系統(tǒng)功能編碼開發(fā)的過程中,每一個用例編碼完成之后都要測試其功能是否實現(xiàn)。但是當(dāng)系統(tǒng)所有的功能模塊整合完之后,針對系統(tǒng)的整體功能做系統(tǒng)功能完整性測試。2 2 相關(guān)理論介紹相關(guān)理論介紹2.12.1 引言引言Web 開發(fā)技術(shù)是隨著互聯(lián)網(wǎng)的普與發(fā)展起來的一門技術(shù),用于開發(fā)互聯(lián)網(wǎng)的 Web 應(yīng)用。Web 開發(fā)技術(shù)又分為前臺開發(fā)技術(shù)和后臺開發(fā)技術(shù)。前臺開發(fā)技術(shù)是指網(wǎng)頁的頁面設(shè)計技術(shù),主要包括 PhotoShop 圖片設(shè)計、Flash 動畫設(shè)計、HTML 超文本標(biāo)記語言、DIV+CSS 層疊樣式表、JavaScript 動態(tài)腳本語言以與AJA

23、X 異步 JavaScript 和 XML 等。網(wǎng)頁設(shè)計者最常用的方式就是采用PhotoShop 進行網(wǎng)頁頁面的整體布局設(shè)計,然后把圖片切片后使用 DIV+CSS 配合 HTML 標(biāo)記語言進行網(wǎng)頁布局,最后通過 JavaScript 和 AJAX 等技術(shù)給網(wǎng)頁添加動態(tài)功能,來提升用戶訪問的體驗感受。后臺開發(fā)技術(shù)是指對對的功能進行開發(fā)的程序設(shè)計技術(shù)。當(dāng)前市面上比較流程的后臺開發(fā)技術(shù)主要有PHP、JSP、asp、 與 Java Web 等。4 / 82綜合問卷調(diào)查系統(tǒng)基于 B/S 模式進行架構(gòu)設(shè)計,選擇 DIV+CSS 技術(shù)進行頁面布局, JavaScript 技術(shù)實現(xiàn)頁面動態(tài)顯示功能。后臺功能模

24、塊開發(fā)采用Java Web 技術(shù)。Web 服務(wù)器選擇 Tomcat,數(shù)據(jù)庫采用 MySQL。為了縮短開發(fā)周期,提高編碼效率,項目在 SSH 集成框架的基礎(chǔ)上進行開發(fā)。SSH 集成框架是由 Struts、Spring 和 Hibernate 框架整合而成的,是當(dāng)前 Java Web 應(yīng)用開發(fā)使用頻率最高的集成框架。下面的小節(jié)會詳細介紹上述的開發(fā)技術(shù)與框架。2.22.2 B/SB/S 模式介紹模式介紹B/S 模式的系統(tǒng)由瀏覽器(Browser)和服務(wù)器(Server)共同組成。該模式的客戶端是市面上常用的瀏覽器,服務(wù)器端為 Web 服務(wù)器來響應(yīng)瀏覽器發(fā)送的請求,如圖 2-1 所示。數(shù)據(jù)和應(yīng)用程序存

25、放在服務(wù)器上,服務(wù)器具有多層結(jié)構(gòu),B/S 系統(tǒng)處理的數(shù)據(jù)類型可以動態(tài)擴展,基于 B/S 模式開發(fā)的應(yīng)用系統(tǒng)的更新維護都在服務(wù)器端進行,客戶端瀏覽器不需要進行更新維護。B/S 架構(gòu)的系統(tǒng)利用不斷發(fā)展的 WWW 瀏覽器技術(shù),結(jié)合瀏覽器的各種腳本語言(JavaScript、VbScript)、Active X 技術(shù)以與 Ajax 技術(shù)等,采用現(xiàn)在流行的瀏覽器替代原有復(fù)雜的客戶端軟件供用戶進行操作。瀏覽器可將服務(wù)器端發(fā)送的 HTML 代碼和數(shù)據(jù)轉(zhuǎn)換成圖文并茂的網(wǎng)頁形式展現(xiàn)給用戶,并且瀏覽器上的網(wǎng)頁還具備交互功能,用戶在網(wǎng)頁上輸入的數(shù)據(jù)通過請求的方式提交給第二層 Web 服務(wù)器,第二層 Web 服務(wù)器將

26、啟動相應(yīng)的進程來響應(yīng)這一請求,并動態(tài)生成一串 HTML 代碼,在 HTML 代碼中加入處理結(jié)果數(shù)據(jù),返回給客戶機的瀏覽器。如果客戶端提交的請求包括數(shù)據(jù)的存取,Web 服務(wù)器還需要和第三層的數(shù)據(jù)庫服務(wù)器共同來完成客戶端的請求。第三層數(shù)據(jù)庫服務(wù)器主要是接收 Web 服務(wù)器發(fā)出的 SQL 請求并管理數(shù)據(jù)庫中的數(shù)據(jù)。5 / 82圖圖 2-12-1 B/SB/S 模式模式B/S 體系結(jié)構(gòu)具有許多傳統(tǒng) C/S 體系結(jié)構(gòu)不具備的優(yōu)點,而且又緊密的結(jié)合了 Internet 技術(shù),充分利用互聯(lián)網(wǎng)產(chǎn)業(yè)優(yōu)勢。B/S 體系結(jié)構(gòu)是軟件技術(shù)發(fā)展的大勢所趨,相對于 C/S 體系結(jié)構(gòu)來說具有更廣闊的市場前景。2.32.3 J

27、avaJava 技術(shù)概述技術(shù)概述Java 是一種面向?qū)ο蟮某绦蛟O(shè)計語言,是由 Sun 公司于 1995 年 5 月推出的。擁有跨平臺、面向?qū)ο蟆⒎盒途幊痰奶匦?,廣泛應(yīng)用于企業(yè)級 Web 應(yīng)用開發(fā)和移動應(yīng)用開發(fā)。Java 程序設(shè)計語言的風(fēng)格和 C+非常相近,它繼承了 C+語言面向?qū)ο蠹夹g(shù)的設(shè)計思想,并且放棄了 C+中容器引起錯誤的指針機制,新增對象引用數(shù)據(jù)類型。同時移出了運算符重載和多重繼承特性,添加接口技術(shù)來替代多重繼承機制。增加垃圾回收功能,由 Java 虛擬機來釋放機器的存。Java 語言程序的執(zhí)行過程和其他的直譯語言不一樣。它首先將源代碼編譯成字節(jié)碼,然后依賴各種不同平臺上的虛擬機來解釋

28、執(zhí)行字節(jié)碼,從而實現(xiàn)了“一次編譯、到處執(zhí)行”的跨平臺特性。在早期 JVM 中,這種運行機制 Java 程序的運行效率。6 / 82后來隨著 JDK 版本的提升,這種情況得到了有效的改善,Java 程序的運行速度有了大幅提升。Java 技術(shù)平臺按照功能性不同,又分為 Java SE 標(biāo)準版、Java EE 企業(yè)版以與 Java ME 微小版三種不同的版本。其中 Java SE 版本是 Java 最基本的程序設(shè)計技術(shù),是學(xué)習(xí) Java EE 和 Java ME 的基礎(chǔ),一般用于桌面應(yīng)用程序開發(fā)。Java EE 版本它提供 Web 服務(wù)、組件模型、管理和通信 API,可以用來實現(xiàn)企業(yè)級的面向服務(wù)體系

29、結(jié)構(gòu)和 Web 應(yīng)用程序。Java ME 是一種優(yōu)化的 Java 運行環(huán)境,主要是針對移動設(shè)備的應(yīng)用開發(fā)。 綜合問卷調(diào)查系統(tǒng)之所以選擇 Java EE 平臺進行功能開發(fā)有三個重要的原因。第一、Java 語言的安全特性。由于 Java 語言在語言定義、字節(jié)碼檢查和程序執(zhí)行這三個階段都執(zhí)行了嚴格的安全檢查機制,對參數(shù)類型、對象訪問權(quán)限和存地址回收進行了嚴格的檢查和控制,可以有效地防止非法代碼的侵入,組織對存的越權(quán)訪問,避免病毒的侵害。第二、Java 語言的跨平臺特性。Java在誕生之日起就有一句非常著名的口號“一次編寫,到處運行”,反應(yīng)了 Java語言的跨平臺性能。由于 Java 程序是在 Jav

30、a 虛擬機上運行, Java 程序可以在任何安裝有 Java 虛擬機的操作系統(tǒng)上運行。第三、Java 語言開源框架功能強大,采用 Java EE 框架來開發(fā) WEB 應(yīng)用,可以提高開發(fā)效率。目前流行的SSH 框架可以實現(xiàn)表示層、業(yè)務(wù)層和持久層的三層分離,可以從很大程序上降低程序的耦合性,提升程序的可擴展性,減少開發(fā)人員的工作量。2.42.4 WebWeb 服務(wù)器介紹服務(wù)器介紹WEB 服務(wù)器也稱為 WWW(WORLD WIDE WEB)服務(wù)器,其主要功能是提供網(wǎng)上信息瀏覽服務(wù)??蛻舳擞嬎銠C使用瀏覽器通過 URL(全球資源定位符)向 WEB服務(wù)器發(fā)送請求之后,WEB 服務(wù)器將接收并處理該請求,并將

31、響應(yīng)信息反饋到該客戶端的瀏覽器上,解析響應(yīng)信息后將網(wǎng)頁顯示在客戶端瀏覽器上。采用不同的后臺開發(fā)技術(shù)開發(fā)的 WEB 應(yīng)用,應(yīng)部署在不同類型的 WEB 服務(wù)器上。Java程序的 Web 服務(wù)器又分為 JSP 服務(wù)器和 Java EE 服務(wù)器這兩種。JSP 服務(wù)器主要有 Tomcat、Bejy Tiger、Geronimo 以與 Jetty 等,Java EE 服務(wù)器主要有Sun Java System Application Server、Bea Weblogic 以與 oss 等。從功能上7 / 82來說,Java EE 服務(wù)器功能更加強大,可支持企業(yè)級的項目部署運行,而 JSP服務(wù)器相對來說功

32、能較弱,主要用于中小型 WEB 項目的部署運行。由于綜合問卷調(diào)查系統(tǒng)為企事業(yè)單位提供問卷調(diào)查服務(wù),規(guī)模相對較小,并發(fā)訪問量不大,所以選擇 Tomcat 作為 WEB 服務(wù)器。Tomcat 是由 Apache 軟件基金會下屬的 Jakarta 項目開發(fā)的一個 Servlet容器,按照公司提供的技術(shù)規(guī),實現(xiàn)了對 Servlet 和 JavaServer Page(JSP)的支持5,并提供了作為 Web 服務(wù)器的一些特有功能,如 Tomcat 管理和控制平臺、安全域管理和 Tomcat 閥等。由于 Tomcat 本身也含了一個 服務(wù)器,也可以作為一個單獨的 Web 服務(wù)器來使用,由于 Tomcat

33、是使用 Java 開發(fā)的,所以它可以運行在任何一個裝有 JVM 的操作系統(tǒng)之上,其自身包含了一個配置管理工具,也可以通過編輯 XML 格式的配置文件來進行配置6。Tomcat 提供了一個 Jasper 編譯器用以將 JSP 編譯成對應(yīng)的 Servlet,它的 Servlet 引擎通常與 Apache 或者其他 Web 服務(wù)器一起工作7。但隨著版本的更新和功能的擴展,越來越多的用戶將其單獨作為 Web 服務(wù)器用以那些對速度和可靠性有較高要求的環(huán)境中8。2.52.5 集成開發(fā)環(huán)境介紹集成開發(fā)環(huán)境介紹集成開發(fā)環(huán)境常被開發(fā)人員稱之為 IDE(Integrated Development Environ

34、ment),就是用于程序開發(fā)環(huán)境的應(yīng)用程序,一般包括代碼編輯器、編譯器、調(diào)試器和圖形用戶界面工具。該程序可以獨立運行,也可以和其它程序并用。常用 Java 的集成開發(fā)環(huán)境有 uilder、JCreater、Eclipse 等。Eclipse 平臺是 IBM 公司向開放源代碼社區(qū)捐贈的 Java 程序開發(fā)框架,是一個開放的、通用的、可擴展的集成開發(fā)環(huán)境9。Eclipse 發(fā)展到現(xiàn)在,已經(jīng)具備進行基于 Java 平臺的各種應(yīng)用程序的開發(fā),并且提供 C、C+、COBOL 一級 Eiffel 等程序設(shè)計語言開發(fā)的插件功能。Eclipse 本身可以作為一個 Java開發(fā)的編譯器,還可以通過添加插件擴展功

35、能。它擁有一個標(biāo)準的插件庫,其中包含了 Java 開發(fā)工具包(JDK)。 Eclipse 是目前 Java 開發(fā)者使用最廣泛的集成開發(fā)環(huán)境之一。Eclipse 的功能非常強大,除了能夠開發(fā) Java SE 項目,還支持 Java Web 項目的開發(fā)。8 / 82本項目開發(fā)使用的是 Eclipse Juno 版本。該版本夠配置使用各種開源框架進行 Web 項目的開發(fā)。2.62.6 WebWeb 框架介紹框架介紹軟件開源框架的研究一直是眾多開發(fā)者關(guān)注的一大課題。著名的軟件大師Ralph Johnson 對框架(Framework)進行了如下的定義:框架是整個系統(tǒng)或系統(tǒng)的一部分的可重用設(shè)計,由一組抽

36、象的類與其實例間的相互作用方式組成15。本節(jié)主要介紹 Struts2、Spring 和 Hibernate 等框架,針對 J2EE 項目架構(gòu)的特點并結(jié)合 Struts2、Spring 和 Hibernate 的各自特點,將這三種框架整合成一個 SSH 多層框架10。其中 Struts 主要負責(zé)表現(xiàn)層,完成頁面顯示、響應(yīng)用戶請求等功能;Spring 主要負責(zé)業(yè)務(wù)邏輯層,完成應(yīng)用系統(tǒng)的業(yè)務(wù)邏輯與事務(wù)處理等功能;Hibernate 主要負責(zé)數(shù)據(jù)持久層,完成與數(shù)據(jù)層的交互功能11。通過上述三大框架的整合,充分發(fā)揮 Struts2、Spring 和 Hibernate 框架各自的優(yōu)勢,降低了各層間的耦合

37、度,解決了 Web 應(yīng)用系統(tǒng)開發(fā)過程中由于系統(tǒng)結(jié)構(gòu)復(fù)雜而帶來的一些問題。項目對 SSH 集成框架的應(yīng)用,提高了系統(tǒng)的開發(fā)效率和可移植性、可維護性。下面分別介紹 Struts2、Spring 和 Hibernate 這三大框架。.1 SSHSSH 體系框架結(jié)構(gòu)體系框架結(jié)構(gòu)J2EE 三層架構(gòu)體系主要由客戶端、服務(wù)器端和持久層組成。用戶在客戶端通過瀏覽器使用 協(xié)議或其他協(xié)議向服務(wù)器端發(fā)送請求,在服務(wù)器端由控制器接收并分析用戶請求信息,然后根據(jù)不同的分析結(jié)果采用相應(yīng)的模塊處理用戶請求,在處理過程過 hibernate 框架將數(shù)據(jù)寫入到數(shù)據(jù)庫層,最后控制器再根據(jù)持久層的處理結(jié)果,向客戶端

38、做出不同的響應(yīng)。架構(gòu)體系模型如下圖 2-2 所示。客 戶 端服務(wù)器端持久層控制器(Struts)模型(Spring)數(shù)據(jù)庫請求Hibernate9 / 82圖圖 2-22-2 SSHSSH 三層架構(gòu)體系模型三層架構(gòu)體系模型在 SSH 框架的三層架構(gòu)體系中,Struts 擔(dān)當(dāng)控制器的角色;而模型層通過 Spring 實現(xiàn)系統(tǒng)功能;Hibernate 主要負責(zé)將業(yè)務(wù)邏輯數(shù)據(jù)持久化到數(shù)據(jù)庫層中去。SSH 架構(gòu)是目前很流行的架構(gòu),Struts 可在控制層和視圖層發(fā)揮作用;持久層采用 Hibernate 充當(dāng)數(shù)據(jù)訪問層;Spring 框架是真正實現(xiàn)業(yè)務(wù)邏輯的,利用它作為業(yè)務(wù)邏輯層。SSH 框架的架構(gòu)層次

39、清晰,三層都是通過接口進行通信的。采用 Struts、Spring 和 Hibernate 三層架構(gòu)體系,可減少代碼的冗余度,在降低開發(fā)難度的同時,提高了開發(fā)效率和系統(tǒng)的可維護性和擴展性。.2 Struts2Struts2 框架介紹框架介紹Struts 是 Apache 軟件基金會(ASF)贊助的一個開源項目。它通過采用 Java Servlet/JSP 技術(shù),實現(xiàn)了基于 Java EE Web 應(yīng)用的 MVC 設(shè)計模式的應(yīng)用框架。Struts 最早是作為 Apache Jakarta 項目的組成部分,Struts 的開發(fā)者希望通過對該項目的研究,改進和提高 JavaServe

40、r Pages 、Servlet、標(biāo)簽庫以與面向?qū)ο蟮募夹g(shù)水準。軟件工程師使用 Struts 為業(yè)務(wù)應(yīng)用的每一層提供支持。Struts 最大的功能是幫助開發(fā)者減少在運用 MVC 設(shè)計模型開發(fā) Web 顯示層時提供便利,能夠更方便對控制器進行管理,讓顯示層與業(yè)務(wù)層代碼進行分頁,并且為頁面與控制器之間的數(shù)據(jù)傳遞提供更加方便的方法。Struts2 是 Struts 的下一代產(chǎn)品,是在 struts1 和 WebWork 的技術(shù)基礎(chǔ)上進行了合并的全新的 Struts2 框架。其全新的 Struts2 的體系結(jié)構(gòu)與Struts1 的體系結(jié)構(gòu)差別巨大。Struts2 以 WebWork 為核心,采用攔截器

41、的機制來處理用戶的請求,這樣的設(shè)計也使得業(yè)務(wù)邏輯控制器能夠與 ServletAPI完全脫離開。由于 Struts2 采用攔截器的機制來處理用戶的請求,所以項目中所有的控制器都是由一個問卷 struts.xml 配置的。Struts2 的使用方式與傳統(tǒng)的 Servlet 加 JSP 完全不一樣,開發(fā)者在使用 Struts2 框架之前必須對它的API 進行一個深入了解和學(xué)習(xí)。10 / 8.3 SpringSpring 框架介紹框架介紹Spring 框架是 Rod Johnson,Juergen Hoeller 等開發(fā)的,用于支持JavaBean 構(gòu)件運行的容器。該框架提供了依賴注

42、入的方式的構(gòu)件組裝機制和基于 AOP 技術(shù)的事物和日志管理等功能12。Spring 框架具有以下優(yōu)點。第一、方便解耦,簡化開發(fā)通過 Spring 提供的 IoC 容器,開發(fā)者可以使用 Spring 控制對象之間的依賴關(guān)系,避免開發(fā)者創(chuàng)建對象之間關(guān)聯(lián)造成程序的耦合。使用 Spring 框架之后,開發(fā)者不需要去通過單例模式或者工廠模式來進行對象的底層存處理,可以把精力更多的放在業(yè)務(wù)邏輯處理上。第二、AOP 編程支持Spring 的 AOP 技術(shù)支持,能夠方便開發(fā)者進行切面編程,傳統(tǒng)程序設(shè)計不容易實現(xiàn)的程序設(shè)計可以通過 AOP 技術(shù)實現(xiàn)。第三、聲明式事務(wù)的支持在 Spring 中可以通過聲明的方式對

43、程序設(shè)計進行事務(wù)管理,通過注釋的方式實現(xiàn)部對象管理和事務(wù)管理。第四、方便程序的測試Spring 框架可以使用非容器運行的方式進行所有的軟件測試工作,通過框架強大的測試功能進行分布式測試工作。第五、方便集成各種優(yōu)秀框架Spring 作為一款優(yōu)秀的輕量級框架,對其他優(yōu)秀的框架兼容性好,并不排斥其他的框架,可以很好的整合 Spring 和其他的框架。.4 HibernateHibernate 框架介紹框架介紹Hibernate 是一個功能強大的開源 ORM 框架工具,通過 Hibernate 框架開發(fā)者可以使用 Java 的反射、繼承等機制把實體對象和數(shù)據(jù)庫表進行關(guān)聯(lián),Hiberna

44、te 同時也支持 Microsoft SQL Server、MySQL、Oracle 等主流數(shù)據(jù)庫系統(tǒng)13。Hibernate 框架利用對象映射的關(guān)系通過 XML 配置文件讓 JavaBean與數(shù)據(jù)庫表建立聯(lián)系,它把對數(shù)據(jù)庫表的操作轉(zhuǎn)換為對實體類對象的操作,簡化了開發(fā)者對數(shù)據(jù)庫底層代碼的開發(fā)。11 / 822.72.7 小結(jié)小結(jié)本章重點介紹了項目開發(fā)采用的技術(shù),主要介紹了 Java Web 技術(shù)。目前采用 Java Web 技術(shù)開發(fā)的項目在市場占有率上超過了其他 Web 技術(shù)開發(fā)的項目,因為 Java Web 技術(shù)具有各種新特性,比如安全性、多線程性和跨平臺性等。系統(tǒng)采用了 SSH(Strut

45、s+Spring+hibernate)綜合框架來進行項目架構(gòu)。針對 J2EE 項目架構(gòu)的特點并結(jié)合 Struts2、Spring 和 Hibernate 的各自特點,將這三種框架整合成一個 SSH 集成框架。其中 Struts 主要負責(zé)表現(xiàn)層,完成頁面顯示、響應(yīng)用戶請求等功能;Spring 主要負責(zé)業(yè)務(wù)邏輯層,完成應(yīng)用系統(tǒng)的業(yè)務(wù)邏輯與事務(wù)處理等功能;Hibernate 主要負責(zé)數(shù)據(jù)持久層,完成與數(shù)據(jù)層的交互功能。項目采用的 Web 服務(wù)器是 Tomcat6.0。Tomcat 作為 Java Web 服務(wù)器來使用,具有占用資源少、性能穩(wěn)定、免費開源等優(yōu)點,所以深受 Java 程序員的喜愛。中小規(guī)

46、模的基于 Java 平臺的 Web 項目都選擇使用 Tomcat 作為 Web 服務(wù)器。3 3 系統(tǒng)需求分析與總體設(shè)計系統(tǒng)需求分析與總體設(shè)計3.13.1 引言引言軟件需求分析研究用戶需求,完全理解用戶對軟件需求的完整功能,確認用戶軟件功能需求,建立可確認的、可驗證的一個基本依據(jù)4。軟件需求分析是一個軟件項目的開端,也是項目實施最重要的關(guān)鍵點,其主要目的是讓項目開發(fā)人員全面掌握用戶對軟件項目的整體功能要求。需求分析工作人員負責(zé)與用戶進行溝通,收集用戶對軟件項目的具體需求和用戶使用的相關(guān)細節(jié),并制定詳細的需求分析文檔。據(jù)有關(guān)的機構(gòu)分析結(jié)果表明,軟件產(chǎn)品存在不完整性、不正確性等問題 80以上是需求分

47、析錯誤所導(dǎo)致的,而且由于需求分析錯誤造成根本性的功能問題尤為突出14。因此,準確而詳細的需求分析是軟件項目成功的必要保障。綜合問卷調(diào)查系統(tǒng)研發(fā)最初是為職業(yè)技術(shù)學(xué)校畢業(yè)生就業(yè)信息調(diào)查提供技術(shù)支持,然后又發(fā)展到增加學(xué)生學(xué)習(xí)情況調(diào)查、學(xué)生對任課教師教學(xué)意見調(diào)查12 / 82等需求。根據(jù)高等院校各個部門的不同調(diào)查需求,問卷調(diào)查系統(tǒng)需要增加動態(tài)添加調(diào)查問卷的功能,然后針對不同的被調(diào)查用戶群體匹配不同的調(diào)查問卷。綜合問卷調(diào)查系統(tǒng)的用戶需求總體來說比較簡單。系統(tǒng)操作流程如下,首先讓管理員能夠根據(jù)調(diào)查情況的需要在系統(tǒng)中設(shè)計不同的系統(tǒng)問卷,然后導(dǎo)入相應(yīng)的問卷參與者賬戶。同時問卷參與者登錄之后能夠看到生成的問卷并

48、參與答卷。最后管理員可以對參與者回答后生成的答卷結(jié)果進行統(tǒng)計。后面的章節(jié)會詳細介紹用戶的需求情況。3.23.2 系統(tǒng)需求分析系統(tǒng)需求分析綜合問卷調(diào)查系統(tǒng)這個項目的研發(fā)最初的目的是收集職業(yè)技術(shù)學(xué)校畢業(yè)學(xué)生的工作生活情況以與畢業(yè)生工作過程中掌握的社會對該畢業(yè)生專業(yè)技能實際需求。通過收集并且分析這些數(shù)據(jù)為整個專業(yè)的教學(xué)計劃改革提供一個數(shù)據(jù)依據(jù)。在畢業(yè)生信息收集工作啟動之后,學(xué)校的工作人員通過各種即時通訊工具以與 E-MAIL 的形式向往屆畢業(yè)生發(fā)送制作成 Word 文檔格式的調(diào)查問卷,然后等待收集畢業(yè)生反饋的信息。調(diào)查問卷的收集也是通過即時通訊工具或者 E-MAIL 的方式由畢業(yè)生發(fā)送文檔,工作人員

49、把所有收集的文檔統(tǒng)一保存在一個指定的目錄中。采用這種傳統(tǒng)的方式進行問卷調(diào)查有以下幾個弊端:1、電子文檔的調(diào)查問卷可能在傳遞的過程中遺失;2、參與調(diào)查者要完成接收文檔、填寫文檔以與發(fā)送文檔三個步驟,工作相當(dāng)繁瑣且工作量很大;3、在問卷目錄中收集大量的電子文檔格式的答卷保存不便;4、需要工作人員去依次查看所有答卷的電子文檔才能完成統(tǒng)計功能,占用了大量的時間。綜合問卷調(diào)查系統(tǒng)的研發(fā)就解決了上述問題。就職業(yè)技術(shù)學(xué)校的畢業(yè)生信息調(diào)查問卷而言,系統(tǒng)工作人員可以直接給往屆畢業(yè)生發(fā)送一個畢業(yè)生信息調(diào)查問卷的訪問地址。參與問卷調(diào)查的往屆畢業(yè)生也不需要完成接收文檔、文檔中填寫信息、發(fā)送文檔這三個步驟,直接在瀏覽器

50、中打開畢業(yè)生信息調(diào)查問卷的訪問地址,然后在網(wǎng)頁中填寫調(diào)查問卷的信息之后提交即可。而對于系統(tǒng)管理員來說,最大的兩個困難就是調(diào)查問卷電子文檔的保存以與調(diào)查問卷答卷信息的統(tǒng)計,綜合問卷調(diào)查系統(tǒng)的研發(fā)也解決了這兩個問題。首先,在綜合問卷調(diào)查系統(tǒng)中,參與者的答卷信息都保存在數(shù)據(jù)庫的答案數(shù)據(jù)庫表中,這樣就不13 / 82需要去保存大量的電子文檔。其次,綜合問卷調(diào)查系統(tǒng)的統(tǒng)計參與者答卷功能可以針對某份調(diào)查問卷的每一個問題,去統(tǒng)計不同的選項被參與者選擇的數(shù)量在總參與調(diào)查人數(shù)的比例,解決了人工統(tǒng)計占用時間長又容易出錯的問題。綜合問卷調(diào)查系統(tǒng)中可以由系統(tǒng)管理員自己設(shè)計定制調(diào)查問卷,并且問卷中問題的類型也多樣化,所

51、以可以滿足使用單位各種需求的問卷調(diào)查。采用B/S 架構(gòu)設(shè)計的系統(tǒng)可以讓管理員和問卷參與者直接通過瀏覽器就能夠登錄系統(tǒng)15,不需要安裝任何客戶端程序,為問卷調(diào)查的開展提供了便利。3.33.3 系統(tǒng)功能分析系統(tǒng)功能分析本系統(tǒng)要求便于發(fā)布與維護,并且能夠適應(yīng)復(fù)雜的網(wǎng)絡(luò)環(huán)境,可以在不同的平臺下設(shè)置應(yīng)用,系統(tǒng)功能按照用戶具體需求情況分為七大功能模塊,分別是用戶登錄權(quán)限分配、問卷基本信息編輯、問卷中問題編輯、導(dǎo)入問卷參與者賬戶、參與問卷答卷、答卷結(jié)果查看以與答卷結(jié)果統(tǒng)計分析,接下來介紹這七大功能模塊的詳細情況。1、用戶登錄權(quán)限分配該系統(tǒng)的用戶主要分為系統(tǒng)管理員以與問卷調(diào)查參與者兩種用戶,根據(jù)用戶需求這兩種

52、用戶都使用同一登錄界面進行登錄。由于兩種用戶使用同一個入口進入不同的后臺管理界面,所以必須在登錄的時候判斷用戶類型,根據(jù)用戶的不同類型為用戶生成不同的后臺管理菜單,并且屏蔽不屬于該類型用戶的系統(tǒng)功能。系統(tǒng)管理員具備以下的功能權(quán)限問卷基本信息編輯問卷的問題編輯問卷參與者賬戶管理問卷參與者與問卷匹配管理查看答卷信息與答卷結(jié)果統(tǒng)計分析問卷調(diào)查參與者具有下列功能權(quán)限 參與問卷調(diào)查 查看本人問卷結(jié)果14 / 82系統(tǒng)需要完成上述兩級權(quán)限用戶的功能劃分,并實現(xiàn)權(quán)限級別的分類。最主要的是不能讓問卷調(diào)查參與者使用系統(tǒng)管理員的功能。2、問卷基本信息編輯問卷基本信息編輯屬于系統(tǒng)管理員的功能,該功能是針對用戶對問卷

53、設(shè)計這個需求來制定的。問卷基本信息應(yīng)該包含問卷名稱、問卷補充說明、問卷狀態(tài)信息、問卷設(shè)計管理員這四個屬性。問卷設(shè)計包括新建問卷基本信息,修改問卷基本信息、鎖定問卷以與刪除問卷四個操作。3、問卷問題編輯系統(tǒng)管理員的問卷設(shè)計流程按照如下步驟進行,第一、首先創(chuàng)建調(diào)查問卷,輸入調(diào)查問卷基本信息;第二、為調(diào)查問卷添加問題;第三、對調(diào)查問卷基本信息與問題進行修改刪除等編輯操作;第四、鎖定調(diào)查問卷,鎖定之后可以預(yù)覽調(diào)查問卷的問題信息。針對問卷中問題管理員用戶可以進行問題的添加和刪除兩個操作。問卷中問題分為單選題、單選補充填空題、多選題、多選補充填空題以與填空題共五類題型。系統(tǒng)管理員可以根據(jù)頁面不同的選項向問

54、卷數(shù)據(jù)庫中添加不同的問題。同時可以通過問卷問題列表刪除添加錯誤的問題。針對問卷和問卷問題的操作,系統(tǒng)用戶有一個需要注意的方面。對一份調(diào)查問卷來說,在設(shè)計方面組成這個調(diào)查問卷有兩類屬性,分別是問卷基本信息以與問卷所屬問題信息。系統(tǒng)管理員在設(shè)計制作問卷的時候,當(dāng)問卷鎖定狀態(tài)沒有打開時隨時可以編輯問卷的基本信息與問卷所屬問題信息。系統(tǒng)管理員鎖定問卷之后,就無法再對問卷的這兩種信息進行編輯了。當(dāng)問卷鎖定之后,雖然無法對問卷信息進行編輯了,但是可以為問卷匹配參與者賬戶信息,進行下一步操作。4、導(dǎo)入?yún)⑴c者賬戶信息綜合問卷調(diào)查的系統(tǒng)管理員賬戶具有添加問卷參與者的功能。在高等院校受訪群體圍比較大,所以調(diào)查問卷

55、參與者的賬戶信息非常多。因為這個原因,如果在系統(tǒng)后臺做一個輸入?yún)⑴c者賬戶信息的頁面提供給系統(tǒng)管理員輸入,那么系統(tǒng)管理員輸入調(diào)查問卷參與者的賬戶信息這個過程的工作量會變得非常大。15 / 82為了解決這個問題,用戶提出需要系統(tǒng)提供 Excel 文件批量導(dǎo)入調(diào)查問卷參與者賬戶信息這個功能。5、問卷參與者與調(diào)查問卷匹配由于綜合問卷調(diào)查系統(tǒng)需要提供多套問卷答題的功能,而且系統(tǒng)還同時存儲大量的調(diào)查問卷參與者信息。不同的調(diào)查問卷參與者需要參與不同的問卷調(diào)查,所以必須添加調(diào)查問卷參與者與調(diào)查問卷匹配的功能。只有當(dāng)系統(tǒng)管理員把調(diào)查問卷參與者賬戶與調(diào)查問卷進行匹配后,調(diào)查問卷參與者登錄之后才能參與相對應(yīng)問卷的調(diào)

56、查。6、參與問卷調(diào)查調(diào)查問卷參與者登錄系統(tǒng)之后進入后臺管理界面,能夠看到系統(tǒng)管理員為該用戶匹配的調(diào)查問卷。參與者點擊問卷可以直接進入問卷答題頁面進行問卷答卷。調(diào)查問卷參與者可以查看自己填寫的答卷信息。7、查看答卷信息與答卷結(jié)果統(tǒng)計分析查看答卷信息與答卷結(jié)果統(tǒng)計分析功能主要提供給系統(tǒng)管理員進行操作。系統(tǒng)管理員通過查詢和統(tǒng)計調(diào)查問卷參與者答題的數(shù)據(jù),并且對這些數(shù)據(jù)進行分析。最重要的目的是針對問卷中某一個問題,分析參與者選擇這個問題各個選項的比例值。3.43.4 系統(tǒng)總體設(shè)計系統(tǒng)總體設(shè)計.1 系統(tǒng)總體目標(biāo)系統(tǒng)總體目標(biāo)基于 Web 形式的調(diào)查問卷方案實施是在服務(wù)器上部署一個完成問卷調(diào)查

57、的B/S 架構(gòu)項目,構(gòu)建基于 Internet 的問卷調(diào)查信息管理平臺,充分利用網(wǎng)絡(luò)的優(yōu)勢,推廣基于網(wǎng)絡(luò)的無紙化問卷調(diào)查模式,降低問卷調(diào)查活動開展的成本16。本項目將綜合社會上調(diào)查問卷實際需求,充分運用 Java Web 開發(fā)技術(shù)與 SSH開源架構(gòu),達到如下總體設(shè)計目標(biāo):(1)采用攔截器技術(shù)完成系統(tǒng)管理員和調(diào)查問卷參與用戶權(quán)限模塊管理;(2)采用 Hibernate 框架一對多映射關(guān)聯(lián)技術(shù)與數(shù)據(jù)庫表外鍵關(guān)聯(lián)設(shè)計實現(xiàn)調(diào)查問卷試題管理;(3)在系統(tǒng)管理功能中管理問卷參與用戶角色組和問卷參與者用戶,采用 JXL外部 Jar 包完成使用 Excel 文件導(dǎo)入問卷參與者信息容的功能;16 / 82(4)

58、在系統(tǒng)管理功能中完成調(diào)查問卷分類統(tǒng)計用戶選項答案比例;(5)在用戶管理中管理參與者登錄后匹配答卷信息,參與者點擊調(diào)查問卷進行答卷功能,參與者提交答案信息功能。.2 系統(tǒng)整體流程系統(tǒng)整體流程對于綜合問卷調(diào)查系統(tǒng)來說,整體的工作流程就是從問卷設(shè)計制作開始,然后導(dǎo)入該問卷參與者,參與者填寫調(diào)查問卷,最后統(tǒng)計該問卷的答案選項比例。在整個工作流程中系統(tǒng)中三類用戶參與操作,分別是系統(tǒng)管理員(問卷設(shè)置制作)、調(diào)查問卷參與者用戶以與系統(tǒng)管理員(問卷信息統(tǒng)計),具體流程如圖 3-1 所示。17 / 82圖 3-1 系統(tǒng)整體流程圖18 / 82如上圖所示,系統(tǒng)管理員(問卷設(shè)計角色)登錄之后,可以同

59、時進行調(diào)查問卷問題編輯和用戶信息管理。當(dāng)調(diào)查問卷信息和問卷的問題編輯完成,并且用戶角色組設(shè)計完成導(dǎo)入問卷參與者用戶信息之后,對用戶角色組與調(diào)查問卷進行匹配。同時系統(tǒng)管理員(問卷設(shè)計角色)在完成問卷設(shè)計之后還具有問卷問題預(yù)覽、問卷鎖定、問卷解鎖以與問卷刪除等功能。系統(tǒng)管理員完成上述設(shè)計之后,調(diào)查問卷參與者用戶登錄系統(tǒng)可查詢自己所在用戶組,再根據(jù)系統(tǒng)管理員匹配情況表去查詢當(dāng)前參與者用戶能參加的調(diào)查問卷,并列舉在該用戶答卷選擇后臺頁面上17。用戶選擇其中一份問卷進行填寫,完成問卷調(diào)查進行提交,把用戶答卷信息寫入用戶答案數(shù)據(jù)庫表中。針對每份調(diào)查問卷,當(dāng)所有參與者用戶完成調(diào)查問卷的填寫后,用戶答卷數(shù)據(jù)庫

60、表中就存儲了所有用戶填寫的答案容。系統(tǒng)管理員(答卷統(tǒng)計角色)登錄之后,可以選擇其中一個調(diào)查問卷,對用戶填寫的答案按照題目類別分別進行統(tǒng)計。.3 系統(tǒng)運行環(huán)境系統(tǒng)運行環(huán)境工作站硬件配置(1)CPU 奔騰雙核 1.8GHZ 主頻(2)存 1GB(3)顯存 128MB(4)操作系統(tǒng) Windows Server 2003 版本、瀏覽器 IE4.0 以上版本。(5)服務(wù)器網(wǎng)速 10M 以上軟件環(huán)境(1)Java 技術(shù)平臺 JDK1.6 版本(2)Web 服務(wù)器 Tomcat6.0 版本(3)數(shù)據(jù)庫 MS SQL Server2005(4)JS 框架 Jquery1.7.2(5)SSH

溫馨提示

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

評論

0/150

提交評論