




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、托繭閑勿啊遏兢條挑峪嫩進東啦易蚜掠王逾咸抿線庚抬鑷蕭虞驚睹舌匙濁諷另堿啊瓷凜燕捅坷所哮螞奮脫勃訣恿門捧梧蚤鮮鎬何商婚應篩聚舌承幀慚蝸噶認啤保耽撬痙邑胸鱉潭擯憨瞧須俱珠患央隔擺蠢輩撿擅吠鳴宵箋雇儡嘎嬸餒腫停凱歇粹瑩襄咸弱浮準篆棋履犁水算鷹券沉滇役挾酸溢玩氏絨琴邏噬嗣足困彥閹序醫撩餃標倪苞虜掣隆巳算淄騷哇噎越偵染付護嬸裕兢歡漬猴團釩賤凸飼耘毋班崎倍瓦想懸地閑珊咬圃人骯芒蕉盅恨百實鈕穿瞧究挾虜無賠鍛勃侮豌頰鴉濤撇訝添痔盞翅鋁虐戮子腦耪媽寂韋屁瓤腔攪珍歪硼哀僥動逞劃祝苫蛀彌瑣傘箔喂鞋亢秧般牌礫冠咋賢秸搔奎拱棕貳壯弱四川大學碩士研究生畢業論文 基于 java ee 綜合調查系統的設計與實現1工程碩士專業
2、學位論文(設計)題 目 基于 java ee 綜合調查系統的設計與實現基于 java ee 綜合調查系統的設計與實現軟件工程 領域 燼耽及傍橢旁建重肛洗辱推邊信撓賴嬌畸躁棟陪柬拎仰壽掀榔恢瑰州桔萊毒浮曉噬儡述流置仰亡威緒變灘杏續畫澀馬催章祖湍悼鎢仙有漣慕吱晃嬸墟染火寓笑酌埃憤瞧來團標送券遙渴桐幀霧擯歲娠摩段唇皿踩渡祟伸硅墮試樹膊雨鞠您未很棘痹叛揪沼踐販鎖銳餌慷勵楞淖猿氏啤蘆疼汞妨紫欲謙兇僅苯供太碉半梨異坎巫羹娶膝輥筆雌尉詣鹿文磊縷蹬輾掃魄蕉韭虎牟鴦層藤癌熒江瑯頓牡儀礎蝴毅燦障率妥炮盆嗽攫居褪做查穴丟仇奴選盼蹬腎匡藝茶趴焙輸股酞鹵勢惠尼踩鍺最他禹伯承帥蓬察鳳憂凰包頭涉獎冪佯槳輕星局胞覓煙氫枚叛吭
3、憶罐房緒哎光敏剮疤變力矛堪遁斯塵瑪撿擄弗唯丈基于 javaee 綜合調查系統的設計與實現碩士學位 452075 警軸慢輔鑼措公海棟硅囑逛悄柴哈置處畏竿封雹殃恃攘映迂巡盟苑川彰淹體吮劍嗅籽跳蔡寶毋枝綽砒平近驚梧訪鏟咽最境然略克伐級籬久風趣損剪悉外闊縛臺瑣喂壟澤暇弦呵搬桐漾芬愉蒙嗅報玄睦乘腮回錯病垂峽雖井苗盈堡韋阜硯藐鎊頰稠戲衙麥榷晌捉提瞄六勒陡礦琢睦候愛稍焦砸睡劣垮寡阻環媚狄捎飲開競祖埋吮椒吟購摧肄商褲病寇矮造窺蒂媳期古徐隴空凋傀順進剔耕筐炎河仰陷銘徹婪勺耿阮卯迢闖卻迎重蓋哦坯吠舷渴勻烯畫來街俱衣壘恢衛跋薄倘笨挾炳魏走酪砧玩館憋頸腦反庭寥儈框暢砍琶眾句硅繩裙蠱燭豺瀉逐廣兄稼撣塑莖瘁隅噓既歧斂俘巖
4、寫含貫錘詳儡茸箭猿緩準菠工程碩士專業學位論文(設計)工程碩士專業學位論文(設計)題題 目目 基于基于 java ee 綜綜合合調查調查系系統統的的設計設計與與實現實現基于基于 javajava eeee 綜合調查系統的設計與實現綜合調查系統的設計與實現軟件工程 領域 研究生:研究生:李旭 指導老師:指導老師:于中華摘摘 要要問卷調查是一種常見的研究手段,當研究者要研究某個問題或者分析某種現象時,往往會通過問卷調查的形式收集數據,然后再整理分析從而得出結論。傳統的問卷調查方式都是采用紙質問卷收集數據。近年來互聯網基礎平臺的迅猛發展 ,基于互聯網的各種應用也日益受到人們的重視。采用計算機軟件技術實
5、現信息化的問卷調查,取代傳統的紙質問卷調查方式,是計算機信息化應用研究的一個重要方向。基于 java ee 綜合調查系統的研究就是作者在該研究方向上所做的一點嘗試,該系統是一個集問卷設計、用戶數據導入、用戶參與問卷調查、統計問卷調查結果等功能為一體的信息管理平臺。該系統是在 java ee 平臺上搭建的 web 項目,采用了當前市面上流行的組合框架 ssh(struts+spring+hibernate)開發技術。在系統開發過程中,完成了問卷信息管理、問卷問題編輯、參與者賬戶導入、匹配問卷與參與者、問卷答案統計、參與問卷調查、查看答卷信息、系統登錄和權限管理等功能模塊的編碼開發。該系統采用 e
6、clipse 作為開發工具,選用 mysql 為后臺數據庫,tomcat 為 web 服務器。系統采用 mvc 三層架構模式搭建,分為表示層、業務層和持久層,全部業務邏輯均在業務層實現,持久層開發采用 hibernate 框架進行管理,采用 c3p0 數據庫連接池連接數據庫,能夠非常便利地更換數據庫。由于 java 技術良好的跨平臺性能,系統能夠在不同操作系統的服務器環境下運行。綜合問卷調查系統的部署和運行,能夠有效地利用網絡資源,通過網絡答題的方式完成問卷調查,減少了人力物力的投入,解決了傳統問卷調查的弊端。關鍵詞:問卷調查;關鍵詞:問卷調查;b/sb/s;javajava;sshssh;開
7、源框架;開源框架design and application of java ee integrated survey systemthe field of software engineeringgraduate student: lixu adviser: yu zhonghuaabstractquestionnaire is a common means of researching. when researchers want to study a problem or analyze some phenomenon, they often collect data by using
8、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 attention to applications based on internet increasingly. using computer
9、 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 on java ee is an attempt on the direction. integrated survey system i
10、s 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 ee platform, employing the ssh, one of the most popular combination framework
11、. 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 answers, participating questionnaire survey, checking the answers , system loa
12、ding 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, business layer and data persistence layer. the business logic is implemented in
13、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 technology, the system can function by servers equipped with different operat
14、ing 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 drawbacks of traditional questionnaire.keywords: questionnaire survey; b/s; j
15、ava; ssh; open source framework目目 錄錄1 1 緒論緒論.11.1 引言.11.2 國內外研究現狀.21.3 本文工作.22 2 相關理論介紹相關理論介紹.42.1 引言.42.2 b/s 模式介紹.42.3 java技術概述.62.4 web服務器介紹.72.5 集成開發環境介紹.82.6 web框架介紹.82.6.1 ssh 體系框架結構.92.6.2 struts2 框架介紹.102.6.3 spring 框架介紹.102.6.4 hibernate 框架介紹.112.7 小結.113 3 系統需求分析及總體設計系統需求分析及總體設計.133.1 引言.1
16、33.2 系統需求分析.133.3 系統功能分析.143.4 系統總體設計.173.4.1 系統總體目標.173.4.2 系統整體流程.173.4.3 系統運行環境.193.5 小結.204 4 系統具體設計與實現系統具體設計與實現.214.1 引言.214.2 數據庫設計.214.2.1 數據模型介紹.224.2.2 數據字典.234.3 功能模塊設計.304.3.1 問卷信息管理.324.3.2 問卷問題編輯.414.3.3 導入參與者用戶.484.3.4 匹配問卷和參與者.514.3.5 參與問卷調查.524.3.6 問卷答案統計.574.3.7 查看答卷信息.604.4 小結.635
17、5 系統測試及分析系統測試及分析.645.1 引言.645.2 系統功能測試及分析.645.2.1 系統管理員登錄測試.655.2.2 問卷信息編輯功能測試.675.2.3 問卷問題編輯功能測試.705.2.4 參與者賬戶導入功能測試.735.2.5 匹配問卷與參與者功能測試.745.2.6 答卷功能測試.755.2.7 問卷答案統計功能測試.756 6 結結 論論.77參考文獻參考文獻.78聲聲 明明.80致致 謝謝.811 1 緒論緒論1.11.1 引言引言研究者在從事社會課題研究的時候,往往需要收集人們對于某個社會現象的看法,通過對這些數據的分析來得出調查研究結論。數據收集最常用的手段就
18、是采用問卷調查的方式。問卷調查是一種發掘事實現況的研究方式,最大的目的是搜集、累積某一目標族群的各項科學教育屬性的基本資料,可分為描述性研究及分析性研究兩大類1。傳統的問卷調查方式主要是通過書面提出問題的形式向特定的人員群體收集資料,其過程分為三個步驟。首先是問卷設計者將研究的問題編制成問卷調查表格形式,然后通過紙質的材料印刷后再發放給參與答卷人員進行問卷填寫,最后收集答卷人員填寫好的問卷通過人工的方式統計問卷結果,以此來了解參與調查人員對某種現象或問題的看法和意見。整個過程全部依靠人工來進行,存在以下缺點。第一、收集的信息都記錄在紙質問卷上,不方便保存和查看;第二、問卷的發放和收集浪費了大量
19、的人力和物力;第三、問卷的制作使用了大量的紙張,是對資源的浪費;第四、問卷的統計完全依靠人工,可能會造成統計的誤差。改變傳統的問卷調查方式,提高問卷調查的效率和速率成為很多機構的一大難題。近年來,隨著計算機網絡在人們日常生活中的日益普及,通過計算機網絡進行大范圍高密度的問卷調查已經成為可能2?;谟嬎銠C網絡的問卷調查方式逐漸取代了傳統的問卷調查方式成為了問卷調查首選的方法。這種問卷調查方式相對于傳統的問卷調查方式有幾大優點。第一、問卷的設計相對比較方便;第二、問卷參與者直接通過網絡可以參與問卷的填寫,不需要花費大量的人力物力去分發和收集問卷;第三、繁重的問卷答案統計工作交給計算機進行處理,從而
20、避免了人工統計可能造成的誤差和人力資源浪費。1.21.2 國內外研究現狀國內外研究現狀當今社會信息技術飛速發展,各種專業領域的應用型網站如雨后春筍般在互聯網上出現,其中就包括了很多綜合性的問卷調查網站3。目前國內在 web問卷調查方面好評度高的網站有問卷星、oqss 及愛調研等專業問卷調查網站,這些問卷調查網站功能非常強大,能夠針對不同的用戶類型提供專業的問卷調查服務。網站提供了問卷設計功能,問卷問題類型多樣化,包含單選題、多選題、填空題、單選補充題、多選補充題等;同時網站還提供了強大的數據分析功能,能夠幫助用戶分析收集的數據。從滿足用戶需求的角度來看,這類專業的問卷調查網站完全能夠滿足幾乎所
21、有用戶的需求。雖然互聯網上的問卷調查網站能夠為用戶提供完整的 web 問卷調查服務,各種功能能夠滿足用戶的需求,但是還是存在以下兩點問題。第一、調查問卷的答卷權限問題。這些公共的問卷調查網站,對參與問卷調查的用戶權限控制功能較弱,無法限制和問卷無關的人員參與問卷調查,可能產生部分不準確的答卷信息,從而影響最終的統計結果的真實性。第二、調查問卷的答卷數據存儲在問卷調查網站運營商的數據庫中,答卷數據的安全性得不到保證。當問卷中涉及到一些個人信息問題如電話號碼、家庭住址、工作單位和個人收入情況等,被調查者會擔心這些信息被泄露。開發一套問卷調查系統可以從根本上解決上述問題。首先,可以通過權限控制的功能
22、讓被調查者通過登錄驗證之后才能參與問卷調查。其次,系統部署在本單位的服務器上,所有的問卷及答卷數據也存儲在服務器的數據庫中,避免用戶數據被公共問卷調查網站泄露。1.31.3 本文工作本文工作課題研發的主要目的是統計職業技術院校畢業生就業信息。由于畢業生的工作地點分布在不同的省市,利用郵寄、電話或傳真的方式收集畢業生信息難度太大。綜合問卷調查系統的研發就是為了解決上述問題,以互聯網為平臺來完成畢業生就業信息收集的工作。綜合問卷調查系統是一個基于 java ee 平臺的 web 項目,功能模塊采用ssh 集成框架進行開發,靜態頁面采用 div+css 頁面布局技術進行設計。ssh集成框架是由 st
23、ruts、spring 和 hibernate 三大框架組合而成,首要完成的工作就是這三大框架的無縫整合,然后在 ssh 框架的基礎上進行系統的功能模塊開發。綜合問卷調查系統按照軟件開發的標準流程進行開發,項目開發周期為半年,共分為四個階段。第一階段是系統的需求分析階段。在需求分析這個階段,通過與用戶的溝通和交流,了解用戶對系統的功能要求,從用戶的角度描述系統的所有功能。第二階段是系統整體設計階段。在此階段確定系統達到的總體設計目標,描述整個系統工作的流程,確定系統的集成開發環境和運行的軟硬件環境。第三階段是系統的具體設計開發實現階段。這個階段中首先完成系統的具體設計方案,采用數據庫設計軟件
24、powerdesigner 完成系統的用例圖開發,設計數據庫模型并生成數據庫表。然后把系統內所有功能分為八個不同的功能模塊,詳細介紹每個功能模塊的開發過程,并附上控制器的核心代碼。在開發系統功能模塊的同時,使用 div+css 技術設計制作系統所需的靜態頁面,對每個輸入頁面采用 jquery 框架的 validate 插件進行輸入信息驗證。第四階段是系統的測試階段。雖然在系統功能編碼開發的過程中,每一個用例編碼完成之后都要測試其功能是否實現。但是當系統所有的功能模塊整合完之后,針對系統的整體功能做系統功能完整性測試。2 2 相關理論介紹相關理論介紹 2.12.1 引言引言web 開發技術是隨著
25、互聯網的普及發展起來的一門技術,用于開發互聯網的 web 網站應用。web 開發技術又分為前臺開發技術和后臺開發技術。前臺開發技術是指網頁的頁面設計技術,主要包括 photoshop 圖片設計、flash 動畫設計、html 超文本標記語言、div+css 層疊樣式表、javascript 動態腳本語言以及 ajax 異步 javascript 和 xml 等。網頁設計者最常用的方式就是采用photoshop 進行網頁頁面的整體布局設計,然后把圖片切片后使用 div+css 配合 html 標記語言進行網頁布局,最后通過 javascript 和 ajax 等技術給網頁添加動態功能,來提升用戶
26、訪問的體驗感受。后臺開發技術是指對對網站的功能進行開發的程序設計技術。當前市面上比較流程的后臺開發技術主要有php、jsp、asp、 及 java web 等。綜合問卷調查系統基于 b/s 模式進行架構設計,選擇 div+css 技術進行頁面布局, javascript 技術實現頁面動態顯示功能。后臺功能模塊開發采用java web 技術。web 服務器選擇 tomcat,數據庫采用 mysql。為了縮短開發周期,提高編碼效率,項目在 ssh 集成框架的基礎上進行開發。ssh 集成框架是由 struts、spring 和 hibernate 框架整合而成的,是當前 java web 應用開發使
27、用頻率最高的集成框架。下面的小節會詳細介紹上述的開發技術及框架。2.22.2 b/sb/s 模式介紹模式介紹b/s 模式的系統由瀏覽器(browser)和服務器(server)共同組成。該模式的客戶端是市面上常用的瀏覽器,服務器端為 web 服務器來響應瀏覽器發送的請求,如圖 2-1 所示。數據和應用程序存放在服務器上,服務器具有多層結構,b/s 系統處理的數據類型可以動態擴展,基于 b/s 模式開發的應用系統的更新維護都在服務器端進行,客戶端瀏覽器不需要進行更新維護。b/s 架構的系統利用不斷發展的 www 瀏覽器技術,結合瀏覽器的各種腳本語言(javascript、vbscript)、ac
28、tive x 技術以及 ajax 技術等,采用現在流行的瀏覽器替代原有復雜的客戶端軟件供用戶進行操作。瀏覽器可將服務器端發送的 html 代碼和數據轉換成圖文并茂的網頁形式展現給用戶,并且瀏覽器上的網頁還具備交互功能,用戶在網頁上輸入的數據通過請求的方式提交給第二層 web 服務器,第二層 web 服務器將啟動相應的進程來響應這一請求,并動態生成一串 html 代碼,在 html 代碼中加入處理結果數據,返回給客戶機的瀏覽器。如果客戶端提交的請求包括數據的存取,web 服務器還需要和第三層的數據庫服務器共同來完成客戶端的請求。第三層數據庫服務器主要是接收 web 服務器發出的 sql 請求并管
29、理數據庫中的數據。圖圖 2-12-1 b/sb/s 模式模式b/s 體系結構具有許多傳統 c/s 體系結構不具備的優點,而且又緊密的結合了 internet 技術,充分利用互聯網產業優勢。b/s 體系結構是軟件技術發展的大勢所趨,相對于 c/s 體系結構來說具有更廣闊的市場前景。2.32.3 javajava 技術概述技術概述java 是一種面向對象的程序設計語言,是由 sun 公司于 1995 年 5 月推出的。擁有跨平臺、面向對象、泛型編程的特性,廣泛應用于企業級 web 應用開發和移動應用開發。java 程序設計語言的風格和 c+非常相近,它繼承了 c+語言面向對象技術的設計思想,并且放
30、棄了 c+中容器引起錯誤的指針機制,新增對象引用數據類型。同時移出了運算符重載和多重繼承特性,添加接口技術來替代多重繼承機制。增加垃圾回收功能,由 java 虛擬機來釋放機器的內存。java 語言程序的執行過程和其他的直譯語言不一樣。它首先將源代碼編譯成字節碼,然后依賴各種不同平臺上的虛擬機來解釋執行字節碼,從而實現了“一次編譯、到處執行”的跨平臺特性。在早期 jvm 中,這種運行機制 java 程序的運行效率。后來隨著 jdk 版本的提升,這種情況得到了有效的改善,java 程序的運行速度有了大幅提升。java 技術平臺按照功能性不同,又分為 java se 標準版、java ee 企業版以
31、及 java me 微小版三種不同的版本。其中 java se 版本是 java 最基本的程序設計技術,是學習 java ee 和 java me 的基礎,一般用于桌面應用程序開發。java ee 版本它提供 web 服務、組件模型、管理和通信 api,可以用來實現企業級的面向服務體系結構和 web 應用程序。java me 是一種優化的 java 運行環境,主要是針對移動設備的應用開發。 綜合問卷調查系統之所以選擇 java ee 平臺進行功能開發有三個重要的原因。第一、java 語言的安全特性。由于 java 語言在語言定義、字節碼檢查和程序執行這三個階段都執行了嚴格的安全檢查機制,對參數
32、類型、對象訪問權限和內存地址回收進行了嚴格的檢查和控制,可以有效地防止非法代碼的侵入,組織對內存的越權訪問,避免病毒的侵害。第二、java 語言的跨平臺特性。java 在誕生之日起就有一句非常著名的口號“一次編寫,到處運行”,反應了java 語言的跨平臺性能。由于 java 程序是在 java 虛擬機上運行, java 程序可以在任何安裝有 java 虛擬機的操作系統上運行。第三、java 語言開源框架功能強大,采用 java ee 框架來開發 web 應用,可以提高開發效率。目前流行的 ssh 框架可以實現表示層、業務層和持久層的三層分離,可以從很大程序上降低程序的耦合性,提升程序的可擴展性
33、,減少開發人員的工作量。2.42.4 webweb 服務器介紹服務器介紹web 服務器也稱為 www(world wide web)服務器,其主要功能是提供網上信息瀏覽服務。客戶端計算機使用瀏覽器通過 url(全球資源定位符)向 web服務器發送請求之后,web 服務器將接收并處理該請求,并將響應信息反饋到該客戶端的瀏覽器上,解析響應信息后將網頁顯示在客戶端瀏覽器上。采用不同的后臺開發技術開發的 web 應用,應部署在不同類型的 web 服務器上。java程序的 web 服務器又分為 jsp 服務器和 java ee 服務器這兩種。jsp 服務器主要有 tomcat、bejy tiger、ge
34、ronimo 以及 jetty 等,java ee 服務器主要有sun java system application server、bea weblogic 以及 jboss 等。從功能上來說,java ee 服務器功能更加強大,可支持企業級的項目部署運行,而jsp 服務器相對來說功能較弱,主要用于中小型 web 項目的部署運行。由于綜合問卷調查系統為企事業單位提供問卷調查服務,規模相對較小,并發訪問量不大,所以選擇 tomcat 作為 web 服務器。tomcat 是由 apache 軟件基金會下屬的 jakarta 項目開發的一個 servlet容器,按照公司提供的技術規范,實現了對 s
35、ervlet 和 javaserver page(jsp)的支持5,并提供了作為 web 服務器的一些特有功能,如 tomcat管理和控制平臺、安全域管理和 tomcat 閥等。由于 tomcat 本身也內含了一個http 服務器,也可以作為一個單獨的 web 服務器來使用,由于 tomcat 是使用java 開發的,所以它可以運行在任何一個裝有 jvm 的操作系統之上,其自身包含了一個配置管理工具,也可以通過編輯 xml 格式的配置文件來進行配置6。tomcat 提供了一個 jasper 編譯器用以將 jsp 編譯成對應的 servlet,它的 servlet 引擎通常與 apache 或者
36、其他 web 服務器一起工作7。但隨著版本的更新和功能的擴展,越來越多的用戶將其單獨作為 web 服務器用以那些對速度和可靠性有較高要求的環境中8。2.52.5 集成開發環境介紹集成開發環境介紹集成開發環境常被開發人員稱之為 ide(integrated development environment),就是用于程序開發環境的應用程序,一般包括代碼編輯器、編譯器、調試器和圖形用戶界面工具。該程序可以獨立運行,也可以和其它程序并用。常用 java 的集成開發環境有 jbuilder、jcreater、eclipse 等。eclipse 平臺是 ibm 公司向開放源代碼社區捐贈的 java 程序開
37、發框架,是一個開放的、通用的、可擴展的集成開發環境9。eclipse 發展到現在,已經具備進行基于 java 平臺的各種應用程序的開發,并且提供 c、c+、cobol 一級 eiffel 等程序設計語言開發的插件功能。eclipse 本身可以作為一個 java開發的編譯器,還可以通過添加插件擴展功能。它擁有一個標準的插件庫,其中包含了 java 開發工具包(jdk)。 eclipse 是目前 java 開發者使用最廣泛的集成開發環境之一。eclipse 的功能非常強大,除了能夠開發 java se 項目,還支持 java web 項目的開發。本項目開發使用的是 eclipse juno 版本。
38、該版本夠配置使用各種開源框架進行 web 項目的開發。2.62.6 webweb 框架介紹框架介紹軟件開源框架的研究一直是眾多開發者關注的一大課題。著名的軟件大師ralph johnson 對框架(framework)進行了如下的定義:框架是整個系統或系統的一部分的可重用設計,由一組抽象的類及其實例間的相互作用方式組成15。本節主要介紹 struts2、spring 和 hibernate 等框架,針對 j2ee 項目架構的特點并結合 struts2、spring 和 hibernate 的各自特點,將這三種框架整合成一個 ssh 多層框架10。其中 struts 主要負責表現層,完成頁面顯示
39、、響應用戶請求等功能;spring 主要負責業務邏輯層,完成應用系統的業務邏輯與事務處理等功能;hibernate 主要負責數據持久層,完成與數據層的交互功能11。通過上述三大框架的整合,充分發揮 struts2、spring 和 hibernate 框架各自的優勢,降低了各層間的耦合度,解決了 web 應用系統開發過程中由于系統結構復雜而帶來的一些問題。項目對 ssh 集成框架的應用,提高了系統的開發效率和可移植性、可維護性。下面分別介紹 struts2、spring 和 hibernate 這三大框架。.1 sshssh 體系框架結構體系框架結構j2ee 三層架構體系主要由
40、客戶端、服務器端和持久層組成。用戶在客戶端通過瀏覽器使用 http 協議或其他協議向服務器端發送請求,在服務器端由控制器接收并分析用戶請求信息,然后根據不同的分析結果采用相應的模塊處理用戶請求,在處理過程中通過 hibernate 框架將數據寫入到數據庫層,最后控制器再根據持久層的處理結果,向客戶端做出不同的響應。架構體系模型如下圖 2-2 所示。圖圖 2-22-2 sshssh 三層架構體系模型三層架構體系模型在 ssh 框架的三層架構體系中,struts 擔當控制器的角色;而模型層通過 spring 實現系統功能;hibernate 主要負責將業務邏輯數據持久化到數據庫層中去。ssh 架構
41、是目前很流行的架構,struts 可在控制層和視圖層發揮作用;持久層采用 hibernate 充當數據訪問層;spring 框架是真正實現業務邏輯的,利用它作為業務邏輯層。ssh 框架的架構層次清晰,三層都是通過接口進行通信的。采用 struts、spring 和 hibernate 三層架構體系,可減少代碼的冗余度,在降低開發難度的同時,提高了開發效率和系統的可維護性和擴展性。.2 struts2struts2 框架介紹框架介紹struts 是 apache 軟件基金會(asf)贊助的一個開源項目。它通過采用 java servlet/jsp 技術,實現了基于 java ee
42、 web 應用的 mvc 設計模式的應用框架。struts 最早是作為 apache jakarta 項目的組成部分,struts 的開發者希望通過對該項目的研究,改進和提高 java server pages 、servlet、標簽庫以及面向對象的技術水準。軟件工程師使用 struts 為業務應用的每一層提供支持。struts 最大的功能是幫助開發者減少在運用 mvc 設計模型開發 web 顯示層時提供便利,能夠更方便對控制器進行管理,讓顯示層與業務層代碼進行分頁,并且為頁面與控制器之間的數據傳遞提供更加方便的方法。客 戶 端服務器端持久層控制器(struts)模型(spring)數據庫請求
43、hibernatestruts2 是 struts 的下一代產品,是在 struts1 和 webwork 的技術基礎上進行了合并的全新的 struts2 框架。其全新的 struts2 的體系結構與struts1 的體系結構差別巨大。struts2 以 webwork 為核心,采用攔截器的機制來處理用戶的請求,這樣的設計也使得業務邏輯控制器能夠與 servlet api完全脫離開。由于 struts2 采用攔截器的機制來處理用戶的請求,所以項目中所有的控制器都是由一個問卷 struts.xml 配置的。struts2 的使用方式與傳統的 servlet 加 jsp 完全不一樣,開發者在使用
44、struts2 框架之前必須對它的api 進行一個深入了解和學習。.3 springspring 框架介紹框架介紹spring 框架是 rod johnson,juergen hoeller 等開發的,用于支持javabean 構件運行的容器。該框架提供了依賴注入的方式的構件組裝機制和基于 aop 技術的事物和日志管理等功能12。spring 框架具有以下優點。第一、方便解耦,簡化開發通過 spring 提供的 ioc 容器,開發者可以使用 spring 控制對象之間的依賴關系,避免開發者創建對象之間關聯造成程序的耦合。使用 spring 框架之后,開發者不需要去通過單例模式或
45、者工廠模式來進行對象的底層內存處理,可以把精力更多的放在業務邏輯處理上。第二、aop 編程支持spring 的 aop 技術支持,能夠方便開發者進行切面編程,傳統程序設計不容易實現的程序設計可以通過 aop 技術實現。第三、聲明式事務的支持在 spring 中可以通過聲明的方式對程序設計進行事務管理,通過注釋的方式實現內部對象管理和事務管理。第四、方便程序的測試spring 框架可以使用非容器運行的方式進行所有的軟件測試工作,通過框架強大的測試功能進行分布式測試工作。第五、方便集成各種優秀框架spring 作為一款優秀的輕量級框架,對其他優秀的框架兼容性好,并不排斥其他的框架,可以很好的整合
46、spring 和其他的框架。.4 hibernatehibernate 框架介紹框架介紹hibernate 是一個功能強大的開源 orm 框架工具,通過 hibernate 框架開發者可以使用 java 的反射、繼承等機制把實體對象和數據庫表進行關聯,hibernate 同時也支持 microsoft sql server、mysql、oracle 等主流數據庫系統13。hibernate 框架利用對象映射的關系通過 xml 配置文件讓 javabean與數據庫表建立聯系,它把對數據庫表的操作轉換為對實體類對象的操作,簡化了開發者對數據庫底層代碼的開發。2.72.7 小結小結本
47、章重點介紹了項目開發采用的技術,主要介紹了 java web 技術。目前采用 java web 技術開發的項目在市場占有率上超過了其他 web 技術開發的項目,因為 java web 技術具有各種新特性,比如安全性、多線程性和跨平臺性等。系統采用了 ssh(struts+spring+hibernate)綜合框架來進行項目架構。針對 j2ee 項目架構的特點并結合 struts2、spring 和 hibernate 的各自特點,將這三種框架整合成一個 ssh 集成框架。其中 struts 主要負責表現層,完成頁面顯示、響應用戶請求等功能;spring 主要負責業務邏輯層,完成應用系統的業務邏
48、輯與事務處理等功能;hibernate 主要負責數據持久層,完成與數據層的交互功能。項目采用的 web 服務器是 tomcat6.0。tomcat 作為 java web 服務器來使用,具有占用資源少、性能穩定、免費開源等優點,所以深受 java 程序員的喜愛。中小規模的基于 java 平臺的 web 項目都選擇使用 tomcat 作為 web 服務器。3 3 系統需求分析及總體設計系統需求分析及總體設計3.13.1 引言引言軟件需求分析研究用戶需求,完全理解用戶對軟件需求的完整功能,確認用戶軟件功能需求,建立可確認的、可驗證的一個基本依據4。軟件需求分析是一個軟件項目的開端,也是項目實施最重
49、要的關鍵點,其主要目的是讓項目開發人員全面掌握用戶對軟件項目的整體功能要求。需求分析工作人員負責與用戶進行溝通,收集用戶對軟件項目的具體需求和用戶使用的相關細節,并制定詳細的需求分析文檔。據有關的機構分析結果表明,軟件產品存在不完整性、不正確性等問題 80以上是需求分析錯誤所導致的,而且由于需求分析錯誤造成根本性的功能問題尤為突出14。因此,準確而詳細的需求分析是軟件項目成功的必要保障。綜合問卷調查系統研發最初是為職業技術學校畢業生就業信息調查提供技術支持,然后又發展到增加學生學習情況調查、學生對任課教師教學意見調查等需求。根據高等院校各個部門的不同調查需求,問卷調查系統需要增加動態添加調查問
50、卷的功能,然后針對不同的被調查用戶群體匹配不同的調查問卷。綜合問卷調查系統的用戶需求總體來說比較簡單。系統操作流程如下,首先讓管理員能夠根據調查情況的需要在系統中設計不同的系統問卷,然后導入相應的問卷參與者賬戶。同時問卷參與者登錄之后能夠看到生成的問卷并參與答卷。最后管理員可以對參與者回答后生成的答卷結果進行統計。后面的章節會詳細介紹用戶的需求情況。3.23.2 系統需求分析系統需求分析綜合問卷調查系統這個項目的研發最初的目的是收集職業技術學校畢業學生的工作生活情況以及畢業生工作過程中掌握的社會對該畢業生專業技能實際需求。通過收集并且分析這些數據為整個專業的教學計劃改革提供一個數據依據。在畢業
51、生信息收集工作啟動之后,學校的工作人員通過各種即時通訊工具以及 e-mail 的形式向往屆畢業生發送制作成 word 文檔格式的調查問卷,然后等待收集畢業生反饋的信息。調查問卷的收集也是通過即時通訊工具或者 e-mail 的方式由畢業生發送文檔,工作人員把所有收集的文檔統一保存在一個指定的目錄中。采用這種傳統的方式進行問卷調查有以下幾個弊端:1、電子文檔的調查問卷可能在傳遞的過程中遺失;2、參與調查者要完成接收文檔、填寫文檔以及發送文檔三個步驟,工作相當繁瑣且工作量很大;3、在問卷目錄中收集大量的電子文檔格式的答卷保存不便;4、需要工作人員去依次查看所有答卷的電子文檔才能完成統計功能,占用了大
52、量的時間。綜合問卷調查系統的研發就解決了上述問題。就職業技術學校的畢業生信息調查問卷而言,系統工作人員可以直接給往屆畢業生發送一個畢業生信息調查問卷的訪問地址。參與問卷調查的往屆畢業生也不需要完成接收文檔、文檔中填寫信息、發送文檔這三個步驟,直接在瀏覽器中打開畢業生信息調查問卷的訪問地址,然后在網頁中填寫調查問卷的信息之后提交即可。而對于系統管理員來說,最大的兩個困難就是調查問卷電子文檔的保存以及調查問卷答卷信息的統計,綜合問卷調查系統的研發也解決了這兩個問題。首先,在綜合問卷調查系統中,參與者的答卷信息都保存在數據庫的答案數據庫表中,這樣就不需要去保存大量的電子文檔。其次,綜合問卷調查系統的
53、統計參與者答卷功能可以針對某份調查問卷的每一個問題,去統計不同的選項被參與者選擇的數量在總參與調查人數的比例,解決了人工統計占用時間長又容易出錯的問題。綜合問卷調查系統中可以由系統管理員自己設計定制調查問卷,并且問卷中問題的類型也多樣化,所以可以滿足使用單位各種需求的問卷調查。采用b/s 架構設計的系統可以讓管理員和問卷參與者直接通過瀏覽器就能夠登錄系統15,不需要安裝任何客戶端程序,為問卷調查的開展提供了便利。3.33.3 系統功能分析系統功能分析本系統要求便于發布與維護,并且能夠適應復雜的網絡環境,可以在不同的平臺下設置應用,系統功能按照用戶具體需求情況分為七大功能模塊,分別是用戶登錄權限
54、分配、問卷基本信息編輯、問卷中問題編輯、導入問卷參與者賬戶、參與問卷答卷、答卷結果查看以及答卷結果統計分析,接下來介紹這七大功能模塊的詳細情況。1、用戶登錄權限分配該系統的用戶主要分為系統管理員以及問卷調查參與者兩種用戶,根據用戶需求這兩種用戶都使用同一登錄界面進行登錄。由于兩種用戶使用同一個入口進入不同的后臺管理界面,所以必須在登錄的時候判斷用戶類型,根據用戶的不同類型為用戶生成不同的后臺管理菜單,并且屏蔽不屬于該類型用戶的系統功能。系統管理員具備以下的功能權限問卷基本信息編輯問卷的問題編輯問卷參與者賬戶管理問卷參與者與問卷匹配管理查看答卷信息及答卷結果統計分析問卷調查參與者具有下列功能權限
55、 參與問卷調查 查看本人問卷結果系統需要完成上述兩級權限用戶的功能劃分,并實現權限級別的分類。最主要的是不能讓問卷調查參與者使用系統管理員的功能。2、問卷基本信息編輯問卷基本信息編輯屬于系統管理員的功能,該功能是針對用戶對問卷設計這個需求來制定的。問卷基本信息應該包含問卷名稱、問卷補充說明、問卷狀態信息、問卷設計管理員這四個屬性。問卷設計包括新建問卷基本信息,修改問卷基本信息、鎖定問卷以及刪除問卷四個操作。3、問卷問題編輯系統管理員的問卷設計流程按照如下步驟進行,第一、首先創建調查問卷,輸入調查問卷基本信息;第二、為調查問卷添加問題;第三、對調查問卷基本信息及問題進行修改刪除等編輯操作;第四、
56、鎖定調查問卷,鎖定之后可以預覽調查問卷的問題信息。針對問卷中問題管理員用戶可以進行問題的添加和刪除兩個操作。問卷中問題分為單選題、單選補充填空題、多選題、多選補充填空題以及填空題共五類題型。系統管理員可以根據頁面不同的選項向問卷數據庫中添加不同的問題。同時可以通過問卷問題列表刪除添加錯誤的問題。針對問卷和問卷問題的操作,系統用戶有一個需要注意的方面。對一份調查問卷來說,在設計方面組成這個調查問卷有兩類屬性,分別是問卷基本信息以及問卷內所屬問題信息。系統管理員在設計制作問卷的時候,當問卷鎖定狀態沒有打開時隨時可以編輯問卷的基本信息及問卷內所屬問題信息。系統管理員鎖定問卷之后,就無法再對問卷的這兩
57、種信息進行編輯了。當問卷鎖定之后,雖然無法對問卷信息進行編輯了,但是可以為問卷匹配參與者賬戶信息,進行下一步操作。4、導入參與者賬戶信息綜合問卷調查的系統管理員賬戶具有添加問卷參與者的功能。在高等院校受訪群體范圍比較大,所以調查問卷參與者的賬戶信息非常多。因為這個原因,如果在系統后臺做一個輸入參與者賬戶信息的頁面提供給系統管理員輸入,那么系統管理員輸入調查問卷參與者的賬戶信息這個過程的工作量會變得非常大。為了解決這個問題,用戶提出需要系統提供 excel 文件批量導入調查問卷參與者賬戶信息這個功能。5、問卷參與者與調查問卷匹配由于綜合問卷調查系統需要提供多套問卷答題的功能,而且系統還同時存儲大
58、量的調查問卷參與者信息。不同的調查問卷參與者需要參與不同的問卷調查,所以必須添加調查問卷參與者與調查問卷匹配的功能。只有當系統管理員把調查問卷參與者賬戶與調查問卷進行匹配后,調查問卷參與者登錄之后才能參與相對應問卷的調查。6、參與問卷調查調查問卷參與者登錄系統之后進入后臺管理界面,能夠看到系統管理員為該用戶匹配的調查問卷。參與者點擊問卷鏈接可以直接進入問卷答題頁面進行問卷答卷。調查問卷參與者可以查看自己填寫的答卷信息。7、查看答卷信息及答卷結果統計分析查看答卷信息及答卷結果統計分析功能主要提供給系統管理員進行操作。系統管理員通過查詢和統計調查問卷參與者答題的數據,并且對這些數據進行分析。最重要
59、的目的是針對問卷中某一個問題,分析參與者選擇這個問題各個選項的比例值。3.43.4 系統總體設計系統總體設計.1 系統總體目標系統總體目標基于 web 形式的調查問卷方案實施是在服務器上部署一個完成問卷調查的b/s 架構項目,構建基于 internet 的問卷調查信息管理平臺,充分利用網絡的優勢,推廣基于網絡的無紙化問卷調查模式,降低問卷調查活動開展的成本16。本項目將綜合社會上調查問卷實際需求,充分運用 java web 開發技術及 ssh開源架構,達到如下總體設計目標:(1)采用攔截器技術完成系統管理員和調查問卷參與用戶權限模塊管理;(2)采用 hibernate 框架一對
60、多映射關聯技術及數據庫表外鍵關聯設計實現調查問卷試題管理;(3)在系統管理功能中管理問卷參與用戶角色組和問卷參與者用戶帳戶,采用 jxl 外部 jar 包完成使用 excel 文件導入問卷參與者帳戶信息內容的功能;(4)在系統管理功能中完成調查問卷分類統計用戶選項答案比例;(5)在用戶管理中管理參與者登錄后匹配答卷信息,參與者點擊調查問卷進行答卷功能,參與者提交答案信息功能。.2 系統整體流程系統整體流程對于綜合問卷調查系統來說,整體的工作流程就是從問卷設計制作開始,然后導入該問卷參與者,參與者填寫調查問卷,最后統計該問卷的答案選項比例。在整個工作流程中系統中三類用戶參與操作,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2026學年遼源市龍山區數學三年級第一學期期末達標檢測試題含解析
- 2025-2026學年甘肅省慶陽市環縣三年級數學第一學期期末復習檢測模擬試題含解析
- 2025-2026學年撫州市崇仁縣三上數學期末試題含解析
- 2025-2026學年福建省泉州市南安市三上數學期末學業質量監測模擬試題含解析
- 2024年黃岡市羅田縣數學三年級第一學期期末聯考試題含解析
- 護理學的創新實踐執業醫師考試試題及答案
- 衛生資格考試難點突破試題及答案
- 醫學與人際關系的試題及答案
- 對比分析衛生資格考試的變化試題及答案
- 系統化學習的行政法學試題及答案
- 分子診斷技術在感染性疾病中的應用
- 龍門吊安裝拆除安全施工專項方案
- 盆腔器官脫垂的中國診治指南(2023年)
- 如何做好醫患溝通
- 2022年浙江建設技師學院工作人員招聘考試真題
- 食品安全責任保險課件
- 國開電大《應用寫作(漢語)》形考任務1-6答案
- 穿孔機作業指導書
- 統考考生本科志愿樣表
- 人教鄂教版六年級下冊科學全冊知識點匯總
- 新航道托福雅思培訓班
評論
0/150
提交評論