版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、. . . . 基于AJAX的信息發(fā)布與反饋系統(tǒng)的設(shè)計摘 要為了與時獲取學(xué)生的意見建議和與時發(fā)布調(diào)查表,方便系部管理人員、教師和學(xué)生之間的交流,本課題設(shè)計開發(fā)了一個適用于我系信息發(fā)布與反饋的系統(tǒng)。本系統(tǒng)為學(xué)生和教師之間方便快捷的交流提供了一個平臺,為系里教學(xué)和管理工作的改進提供了有效幫助。本系統(tǒng)實現(xiàn)了對管理員、教師、學(xué)生基本信息的存儲和維護;實現(xiàn)了建議提交和回復(fù)整個過程的管理,包括學(xué)生提出建議、管理和教師回復(fù)建議;實現(xiàn)了建議信息的歸類和關(guān)鍵字定義;實現(xiàn)了發(fā)布調(diào)查表的功能,包括調(diào)查表的創(chuàng)建、修改和發(fā)布。此外,本系統(tǒng)具有較全面的查詢和統(tǒng)計功能,包括按類別查找和統(tǒng)計建議信息、對調(diào)查表調(diào)查結(jié)果的匯總統(tǒng)
2、計等。本系統(tǒng)采用B/S結(jié)構(gòu),運行在WEB服務(wù)器上,用戶端只需用瀏覽器就可以訪問本系統(tǒng)。系統(tǒng)基于.NET平臺,是利用ASP.NET、C#語言和Microsoft SQL Server 2005數(shù)據(jù)庫管理系統(tǒng)等工具進行開發(fā)的。本系統(tǒng)的開發(fā)使用了AJAX技術(shù)實現(xiàn)頁面的無刷新,在不更新整個頁面的前提下維護數(shù)據(jù),使系統(tǒng)更加快速地響應(yīng)用戶的各種操作請求。信息發(fā)布與反饋管理系統(tǒng)是按照軟件工程思想設(shè)計完成的。本文按照軟件工程所要求的軟件開發(fā)過程,對本系統(tǒng)的設(shè)計思路、設(shè)計方法、實現(xiàn)技術(shù)和系統(tǒng)界面做了全面的闡述。關(guān)鍵詞:發(fā)表建議,回復(fù)建議,調(diào)查表發(fā)布,調(diào)查結(jié)果統(tǒng)計,B/S結(jié)構(gòu),AJAXDESIGN OF AJAX
3、-BASED INFORMATION RELEASE AND FEEDBACK SYSTEMABSTRACTIn order to gets timely student opinion suggestion and timely release questionnaire, to facilitate communication among department management personnel, teachers and students, this subject develops a system of information dissemination and feedbac
4、k for my department. This system provides a platform for the convenient exchange between students and teachers, and provides effective help for the department to improve teaching and management level . This system realizes storage and maintenance to the basic information of administrators, teachers
5、and students.It realizes management to the whole process of proposal and reply.Using this system,student can make suggestions, and management and teachers can Response to suggestions , managers can classify the information, and definit keywords to the information . This system realizes editing and p
6、ublishing of questionnaire, including questionnaire creating, modifing and distributing. In addition, this system has some comprehensive query and statistical functions, including selecting suggestions by category and giving statistics results of the questionnaires items.This system uses B/S structu
7、re, running on the Web server, so the client simply use its browser to access the system. This system is developed based on. NET platform, useing ASP.NET, C# language and Microsoft SQL Server 2005 database management system tools. The system is developed using AJAX technology to allow the web pages
8、updating partially instead of refreshing the entire page, thus making the system can more quickly respond to the client users requests.Design and Devopment of this system accords with the software engineering principle. This paper presents the details of the systems design,implementation techniques
9、and the user-interface.KEY WORDS:Make Suggestions,Response Suggestions,Survey Publishing,Survey Counting,B/S Structure,AJAX50 / 55目錄前言1第1章概述31.1 系統(tǒng)開發(fā)背景31.2 系統(tǒng)設(shè)計目標(biāo)31.3 開發(fā)與運行環(huán)境41.4 開發(fā)技術(shù)51.4.1 B/S架構(gòu)51.4.2 ASP.NET51.4.3 AJAX技術(shù)6第2章需求分析82.1 功能需求分析82.1.1 角色劃分82.1.2 詳細用例圖82.2 數(shù)據(jù)庫需求分析9第3章總體設(shè)計113.1 系統(tǒng)架構(gòu)113.2
10、功能模塊結(jié)構(gòu)113.3 數(shù)據(jù)庫設(shè)計123.3.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計123.3.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計153.3.3 數(shù)據(jù)庫表設(shè)計16第4章詳細設(shè)計204.1 web. config配置文件204.2 數(shù)據(jù)庫操作類BaseClass204.3 AJAX技術(shù)在頁面中的應(yīng)用224.4 頁面關(guān)系234.5 首頁(登錄頁面)244.6 母版頁254.7 學(xué)生功能設(shè)計254.7.1 寫建議254.7.2 學(xué)生收件箱264.7.3 學(xué)生修改密碼274.7.4 填寫調(diào)查表274.8 教師功能設(shè)計284.8.1 教師收件箱284.8.2 教師修改密碼304.9 管理員功能設(shè)計304.9.1 管理員收件箱304
11、.9.2 建議管理304.9.3 用戶管理314.9.4 類別管理314.9.5 關(guān)鍵字管理334.9.6 調(diào)查表管理334.9.7 建議信息統(tǒng)計364.9.8 調(diào)查表信息統(tǒng)計37第5章系統(tǒng)測試385.1 軟件測試的基本方法385.2 軟件測試策略385.2.1 單元測試385.2.2 組裝測試405.2.3 系統(tǒng)測試40結(jié)論42辭43參考文獻44外文資料翻譯45前言信息發(fā)布是通過介質(zhì)傳播一些具有一定價值和意義的信息,使人們可以與時獲得信息容。信息反饋是人們在看到信息容后,發(fā)表的一些看法或見解,并把自己的看法或見解反饋給信息發(fā)布人的一個過程。本課題所研究的信息發(fā)布是指學(xué)生向管理員或教師提出建議
12、和系部發(fā)布一些調(diào)查表信息;信息反饋是指管理員或教師回復(fù)建議并對學(xué)生填寫的調(diào)查表信息進行統(tǒng)計和總結(jié)。本課題設(shè)計一個信息發(fā)布與反饋系統(tǒng),系統(tǒng)以ASP.NET和SQL Server 2005為開發(fā)平臺,服務(wù)器端代碼選用C#語言編寫,所有的代碼都能在VS2008環(huán)境中運行通過,且功能已全部實現(xiàn)。通過該系統(tǒng),同學(xué)們可以很方便地對系里的教學(xué)工作提出各種意見,管理員和教師可以對同學(xué)們提出的意見進行分類,對其中有價值的信息做出與時的回復(fù)。系統(tǒng)還具有發(fā)布調(diào)查表的功能,并把調(diào)查結(jié)果實時地用數(shù)據(jù)形式表達出來。本系統(tǒng)以方便實用為出發(fā)點,充分考慮實際應(yīng)用的需求,實現(xiàn)了建議的提出和回復(fù),調(diào)查表的發(fā)布和反饋信息統(tǒng)計等功能,
13、基本可以滿足系部管理工作的需求。在本系統(tǒng)開發(fā)中應(yīng)用Ajax技術(shù)實現(xiàn)頁面的無刷新技術(shù),使本系統(tǒng)更加高效地響應(yīng)用戶的各種操作請求。本文按照軟件工程所要求的軟件開發(fā)過程,循序漸進地介紹了信息發(fā)布與反饋系統(tǒng)的設(shè)計思路、設(shè)計方法和實現(xiàn)技術(shù)。論文包括五章,具體容如下:第一章概述,介紹了本系統(tǒng)開發(fā)的背景和設(shè)計目標(biāo)以與使用的相關(guān)工具和技術(shù)。第二章需求分析,通過具體的調(diào)查對系統(tǒng)所要實現(xiàn)的功能和系統(tǒng)數(shù)據(jù)庫進行分析。第三章總體設(shè)計,根據(jù)需求分析的結(jié)果確定設(shè)計原則,完善功能模塊結(jié)構(gòu),完成數(shù)據(jù)庫設(shè)計。第四章詳細設(shè)計,具體介紹本系統(tǒng)中數(shù)據(jù)庫的,主要功能的實現(xiàn)和頁面的設(shè)計。第五章測試,對系統(tǒng)進行測試,驗證系統(tǒng)的正確性。第1
14、章 概述1.1 系統(tǒng)開發(fā)背景隨著高校規(guī)模的不斷擴大,高校已成為一個巨大的信息集聚地。為了實現(xiàn)信息與時高效的傳達,方便教師和學(xué)生之間的交流,讓學(xué)生參與到學(xué)校各個方面的建設(shè)中去,實現(xiàn)和諧校園,對于學(xué)校和系部來說,與時獲取學(xué)生的意見和建議是非常必要的,本課題就是為此目的而開發(fā)的一個用于我系信息發(fā)布與反饋的系統(tǒng)。目前,在我國以與國外的各大高校都有不同形式的、具有一定的信息發(fā)布和反饋功能的系統(tǒng)。許多院校通過學(xué)校實現(xiàn)信息發(fā)布,很少院校具有功能全面的信息反饋系統(tǒng),因此不能很好地獲取和回復(fù)學(xué)生的建議或意見。其中,值得推薦的是中國農(nóng)業(yè)大學(xué)主頁中的“校長信箱”功能, 它具有強大的建議查詢功能,而且可以與時公開的顯
15、示建議容和管理員的回復(fù)結(jié)果,學(xué)生可以根據(jù)管理員回復(fù)的容對其進行滿意度投票,以提高管理員的工作效率1。在各校的信息發(fā)布系統(tǒng)中,能夠發(fā)布調(diào)查表的系統(tǒng)目前也有一些,但有的系統(tǒng)僅擁有簡單的類似“投票”的功能,對于被調(diào)查對象的身份難以辨識;還有的系統(tǒng)通用性較差??傊?,缺乏功能強大,能夠動態(tài)編輯和發(fā)布各種調(diào)查表的系統(tǒng),因此使調(diào)查表的發(fā)布和維護很不方便2。就我系而言,系部也有“書記信箱”功能,學(xué)生可以通過這里向系里提出一些建議或意見,但其收件人比較單一,且功能比較簡單。對于調(diào)查表功能來說,我系沒有這項功能。為了完善系部功能,方便師生交流,提高系部工作效率,我設(shè)計了一個適用與我系的基于AJAX的信息發(fā)布與反饋
16、系統(tǒng)。1.2 系統(tǒng)設(shè)計目標(biāo)設(shè)計開發(fā)一個基于Web的信息發(fā)布與反饋系統(tǒng),能夠收集我系學(xué)生對教學(xué)、學(xué)生紀律管理等方面的意見和建議,能夠針對意見和建議回復(fù)反饋信息,能夠編輯、發(fā)布系里擬定的調(diào)查表,能夠?qū)φ{(diào)查結(jié)果、學(xué)生意見進行歸類統(tǒng)計。本系統(tǒng)主要實現(xiàn)以下10項功能:(1) 用戶登錄與權(quán)限管理:用戶分為管理員、教師、學(xué)生三種身份,用戶登錄后只能轉(zhuǎn)到相應(yīng)的頁面進行操作。(2) 發(fā)表建議:學(xué)生可以向管理員和教師提出建議。(3) 回復(fù)建議:管理員和教師可以對建議進行回復(fù)。(4) 修改密碼:學(xué)生和老師可以修改自己的密碼。(5) 建議管理:管理員根據(jù)類別和關(guān)鍵詞查看、監(jiān)督信息、刪除不良信息,修改建議類別,并可以提
17、取信息的關(guān)鍵詞,進行信息的歸類。(6) 用戶管理:管理員可以增加、刪除、修改、查看教師和學(xué)生的信息。管理員分為高級管理員和普通管理員,高級管理員可以添加、刪除、修改、查看普通管理員的信息。(7) 類別管理:類別用于對建議意見進行歸類。管理員可以查看、增加、修改、刪除類別。(8) 關(guān)鍵字管理:管理員可以增加、刪除、修改、查看建議信息的關(guān)鍵字,也可以根據(jù)關(guān)鍵字查找相應(yīng)的建議信息。(9) 調(diào)查表管理:管理員可以增加、修改、發(fā)布調(diào)查表,學(xué)生可填寫調(diào)查表。(10) 調(diào)查統(tǒng)計:顯示所有建議的數(shù)量,根據(jù)建議的類別顯示不同類別建議的數(shù)量。顯示學(xué)生填寫調(diào)查表的結(jié)果。本系統(tǒng)設(shè)計的目標(biāo)是: 運行在Web環(huán)境下,充分
18、體現(xiàn)我系管理工作的特點,功能完整,界面友好,操作方便,統(tǒng)計功能完善,統(tǒng)計結(jié)果簡潔明了,此外,能夠快速響應(yīng)用戶的操作請求。1.3 開發(fā)與運行環(huán)境本系統(tǒng)開發(fā)環(huán)境:選用的操作系統(tǒng)為Windows XP Professional,程序開發(fā)環(huán)境為Microsoft VisualStudio 2008 ASP.NET,數(shù)據(jù)庫開發(fā)工具為Microsoft SQL SERVER 2005 EXPRESS。系統(tǒng)運行環(huán)境:NET Framework 3.5,IE6.0或者以上版本,Microsoft SQL SERVER 2005。1.4 開發(fā)技術(shù)該系統(tǒng)采用B/S架構(gòu),在.NET平臺下采用ASP.NET 3.5、
19、Microsoft SQL Server 2005進行開發(fā),其中網(wǎng)頁的制作主要運用了ASP.NET Ajax組件實現(xiàn)頁面的無刷新。1.4.1B/S架構(gòu)B/S架構(gòu)即Browser/Server(瀏覽器/服務(wù)器模式)(如圖1-1所示),是WEB興起后的一種軟件結(jié)構(gòu)模式。這種模式下,統(tǒng)一了客戶端,將WEB瀏覽器作為客戶端最主要的應(yīng)用軟件,將系統(tǒng)的主要功能集中到WEB服務(wù)器上實現(xiàn),這樣,簡化了系統(tǒng)的開發(fā)、維護和使用3。B/S結(jié)構(gòu)最大的優(yōu)點就是可以在任何地方進行操作而不用安裝任何專門的軟件。只要有一臺能上網(wǎng)的電腦就能使用,客戶端零維護。系統(tǒng)的擴展非常容易,只要能上網(wǎng),再由系統(tǒng)管理員分配一個用戶名和密碼,
20、就可以使用了。圖1-1 B/S架構(gòu)模型1.4.2 ASP.NETASP即 Active Server Pages(動態(tài)服務(wù)器頁面),是微軟公司的一項技術(shù),是一種使嵌入網(wǎng)頁中的腳本可由因特網(wǎng)服務(wù)器執(zhí)行的服務(wù)器端腳本技術(shù),是運行于 IIS 之中的程序。ASP.NET作為ASP 的下一個版本,既繼承了ASP原有的優(yōu)點,而且是一種建立在通用語言上的程序構(gòu)架,能被用于建立強大的Web應(yīng)用程序。ASP.NET是language-independent(語言獨立化的),所以,開發(fā)者可以選擇一種最適合自己的語言來編寫程序,或者把程序用很多種語言來寫。ASP.NET一般分為兩種開發(fā)語言,VB.NET和C#,C#
21、相對比較常用,在本系統(tǒng)中就使用了C#語言來完成代碼的編寫4。1.4.3 AJAX技術(shù)Ajax(Asynchronous JavaScript and XML)技術(shù)是一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù),是綜合異步通信、JavaScript以與XML等多種網(wǎng)絡(luò)技術(shù)的新的編程方式。從用戶看到得實際效果來看,也可以形象地稱之為無頁面刷新技術(shù)5。圖1-2 傳統(tǒng)的Web應(yīng)用程序與使用Ajax技術(shù)的應(yīng)用程序?qū)Ρ葓DAjax的最大優(yōu)點就是能在不更新整個頁面的前提下維護數(shù)據(jù)。這使得Web應(yīng)用程序更為迅捷地回應(yīng)用戶動作,并避免了在網(wǎng)絡(luò)上發(fā)送那些沒有改變過的信息,因此結(jié)合運用Ajax實現(xiàn)頁面的無刷新技術(shù)(局部刷新)
22、,可以使本系統(tǒng)更加高效地響應(yīng)用戶的各種操作請求。傳統(tǒng)的Web應(yīng)用程序與使用Ajax技術(shù)的應(yīng)用程序的對比如圖1-2所示。ASP.NET為實現(xiàn)AJAX提供了支持,ASP.NET AJAX提供了如下功能: 服務(wù)器端允許ASP.NET Web頁面響應(yīng)部分頁面的回送操作。 ASP.NET服務(wù)器控件便于實現(xiàn)Ajax功能。 處理程序允許ASP.NET Web服務(wù)在部分頁面的回送操作中,使用JavaScript Object Notation(JSON)串行化功能與客戶端代碼通信。 模板可用于創(chuàng)建支持ASP.NET AJAX的Web應(yīng)用程序。 客戶端的Jav
23、aScript庫對JavaScript語法進行了許多改進,還提供了許多代碼,來簡化Ajax功能的實現(xiàn)。第2章 需求分析2.1 功能需求分析信息系統(tǒng)的開發(fā)目標(biāo)必須以滿足用戶需求為前提,而在系統(tǒng)開發(fā)的第一階段,用戶的需求往往是不完整的、不明確的,需要開發(fā)者協(xié)助用戶對需求做進一步的理解乃至創(chuàng)造并歸納出較為詳細的需求說明。一個相對完整、準確的需求分析會為整個信息系統(tǒng)開發(fā)帶來良好的開端,也會盡可能地避免在開發(fā)過程中走彎路。因此,花費足夠的時間進行詳細的用戶需求分析是非常必要的。本系統(tǒng)功能需求的分析利用UML(Unified Modeling Language)統(tǒng)模語言進行了用例建模設(shè)計。2.1.1 角色
24、劃分用例建模設(shè)計之前。首先要對系統(tǒng)進行分析,確定系統(tǒng)用戶,按照系統(tǒng)用戶劃分相應(yīng)的角色,為不同的角色賦予不同的功能,即各類角色在系統(tǒng)中所承擔(dān)的職責(zé)。本系統(tǒng)的角色包括了三類:學(xué)生、教師、管理員。下面分析這些角色的具體功能并畫出相應(yīng)的用例圖。2.1.2 詳細用例圖1. 學(xué)生角色的主要功能包括提出建議、收件箱管理、修改密碼、填寫調(diào)查表等。學(xué)生用例圖如圖2-1所示。圖2-1 學(xué)生用例圖2. 教師角色的主要功能包括回復(fù)建議、修改密碼等,教師用例圖如圖2-2所示。圖2-2 教師用例圖3. 管理員角色的主要功能管理員擁有最大權(quán)限,具有各種管理功能,包括用戶管理、建議管理、調(diào)查表管理、建議信息統(tǒng)計、調(diào)查表信息統(tǒng)
25、計等。管理員用例圖如圖2-3所示。圖2-3 管理員用例圖2.2 數(shù)據(jù)庫需求分析數(shù)據(jù)庫是信息系統(tǒng)的核心,它具有對信息進行收集、組織、存儲、加工、抽取和傳播等功能。數(shù)據(jù)庫設(shè)計是信息發(fā)布與反饋系統(tǒng)實現(xiàn)的重要環(huán)節(jié),其設(shè)計的好壞直接關(guān)系到系統(tǒng)設(shè)計的成敗。數(shù)據(jù)庫設(shè)計的第一步是做好數(shù)據(jù)需求分析,一個好的數(shù)據(jù)庫應(yīng)該充分適應(yīng)系統(tǒng)的功能要求6。根據(jù)系統(tǒng)角色的劃分和要實現(xiàn)的功能,總結(jié)該系統(tǒng)的數(shù)據(jù)對象主要包括如下幾種:l 學(xué)生信息,包括:學(xué)號、學(xué)生、所在班級、專業(yè)、登陸密碼等。l 教師信息,包括:教工號、教師、登陸密碼等。l 管理員信息,包括:管理員賬號、管理員、級別、登陸密碼等。l 建議信息,包括:建議編號、標(biāo)題、
26、類別、發(fā)件人、收件人、建議容、建議時間、建議狀態(tài)等。l 類別信息,包括:類別編號、類別名稱等。l 關(guān)鍵字信息,包括:關(guān)鍵字編號、所屬類別、關(guān)鍵字名稱等。l 調(diào)查表信息,包括:調(diào)查表編號、調(diào)查表主題、發(fā)表時間、截止時間、發(fā)表人等。l 題目信息,包括:編號、題號、題目類別、題目容、出題時間、調(diào)查表號等。l 題目選項信息,包括:選項號、選項容、題號、調(diào)查表號。第3章 總體設(shè)計3.1系統(tǒng)架構(gòu)本系統(tǒng)的設(shè)計思想完全采用面向?qū)ο蟮木幊棠J絹韺崿F(xiàn)。由上到下系統(tǒng)一共分為3個層次,即頁面表示層、數(shù)據(jù)業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層,系統(tǒng)的三層架構(gòu)如圖3-1所示。頁面表示層主要完成了向用戶展現(xiàn)數(shù)據(jù),為用戶提供數(shù)據(jù)錄入的界面。
27、通過頁面表示層,用戶可以完成日常的增加、刪除、修改和查詢等操作。數(shù)據(jù)業(yè)務(wù)層起到了承上啟下的作用,對于頁面表示層來說,數(shù)據(jù)業(yè)務(wù)層可以理解為數(shù)據(jù)操作的服務(wù),當(dāng)用戶請求的時候,頁面表示層通過調(diào)用相應(yīng)的數(shù)據(jù)業(yè)務(wù)層方法,來完成對數(shù)據(jù)的操作。而對于數(shù)據(jù)訪問層來說,數(shù)據(jù)業(yè)務(wù)層是動作的發(fā)起者,由它直接與數(shù)據(jù)訪問層通訊,最終數(shù)據(jù)庫的數(shù)據(jù)提交返回給頁面表示層。數(shù)據(jù)訪問層位于最下層,主要完成數(shù)據(jù)的操作、與數(shù)據(jù)庫的數(shù)據(jù)源直接進行交互、完成數(shù)據(jù)的直接操作7。圖3-1 系統(tǒng)的三層架構(gòu)圖3.2 功能模塊結(jié)構(gòu)根據(jù)需求分析,本系統(tǒng)需要為三類用戶:管理員、教師和學(xué)生,提供不同的功能集合,因此可以將系統(tǒng)功能模塊劃分為三大模塊:(1
28、) 管理員模塊:包括用戶管理、收件箱管理、建議管理、類別管理、關(guān)鍵字管理、調(diào)查表管理、題目管理、建議信息統(tǒng)計和調(diào)查表信息統(tǒng)計等子模塊。(2) 教師模塊:包括收件箱管理、修改密碼等子模塊(3) 學(xué)生模塊:包括寫建議、收件箱管理、填寫調(diào)查表、修改密碼等子模塊。系統(tǒng)各模塊之間的關(guān)系如圖3-2所示。圖3-2 系統(tǒng)模塊結(jié)構(gòu)圖3.3 數(shù)據(jù)庫設(shè)計3.3.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計圖3-3 數(shù)據(jù)庫整體E-R圖根據(jù)前面的數(shù)據(jù)需求分析可確定的數(shù)據(jù)實體有:教師信息實體、學(xué)生信息實體、建議信息實體、調(diào)查表信息等實體。數(shù)據(jù)庫E-R圖與各個實體E-R圖列舉如下。(1) 數(shù)據(jù)庫整體E-R圖,如圖3-3所示。(2) 教師實體,如
29、圖3-4所示。圖3-4 教師實體(3) 學(xué)生實體,如圖3-5所示。圖3-5 學(xué)生實體(4) 管理員實體,如圖3-6所示。圖3-6 管理員實體(5) 建議信息實體,如圖3-7所示。圖3-7 建議實體(6) 類別實體,如圖3-8所示。圖3-8 類別實體(7) 關(guān)鍵字實體,如圖3-9所示。圖3-9 關(guān)鍵字實體(8) 調(diào)查表實體,如圖3-10所示。圖3-10 調(diào)查表實體圖3-11 題目實體圖3-12 選項實體(9) 題目實體,如圖3-11所示。(10) 選項實體,如圖3-12所示。3.3.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計由E-R圖導(dǎo)出一組關(guān)系模式如下:(1) 教師(編號,密碼)主鍵:編號。(2) 學(xué)生(學(xué)號,班
30、級,專業(yè),密碼)主鍵:學(xué)號。(3) 管理員(賬號,密碼,級別)主鍵:賬號。(4) 建議(建議編號,標(biāo)題,類別名稱,寫件人,收件人,時間,建議容,建議狀態(tài))主鍵:建議編號。 外鍵:類別名稱。(5) 回復(fù)(回復(fù)編號,標(biāo)題,類別名稱,寫件人,收件人,時間,回復(fù)容,回復(fù)狀態(tài))主鍵:回復(fù)編號。外鍵:類別名稱。(6) 類別(類別編號,類別名稱)主鍵:類別編號。(7) 關(guān)鍵字(關(guān)鍵字編號,類別名稱,關(guān)鍵字名稱)主鍵:回復(fù)編號。外鍵:類別名稱。(8) 調(diào)查表(調(diào)查表編號,主題,開始日期,截止日期,發(fā)表人)主鍵:調(diào)查表編號。(9) 題目(題目編號,題號,題目類型,題目容,出題時間,調(diào)查表編號)主鍵:題目編號。外
31、鍵:調(diào)查表編號。(10) 選項(選項編號,選項容,題目編號,調(diào)查表編號)主鍵:選項編號。 外鍵:題目編號,調(diào)查表編號。(11) 調(diào)查表回復(fù)(答題編號,答案,題目編號,調(diào)查表編號,學(xué)號)主鍵:答題編號。外鍵:題目編號,調(diào)查表編號,學(xué)號。3.3.3 數(shù)據(jù)庫表設(shè)計在SQL SERVER 2005中建立數(shù)據(jù)庫“Information”,數(shù)據(jù)文件Information.mdf,日志文件Information _log.ldf。1. 表結(jié)構(gòu)(1) 學(xué)生基本信息表,如表3-1所示。表3-1 學(xué)生基本信息表student字段名稱數(shù)據(jù)類型可否為空字段描述snoVarchar(10)Not Null學(xué)號(主鍵)s
32、nameVarchar(20)Not Null學(xué)生pwdVarchar(10)Not Null密碼clssVarchar(10)Not Null所在班級subjectVarchar(20)Not Null所屬專業(yè)(2)教師信息表,如表3-2所示。表3-2 教師基本信息表teacher字段名稱數(shù)據(jù)類型可否為空字段描述tnoVarchar(10)Not Null教師編號(主鍵)tnameVarchar(10)Not Null教師pwdVarchar(20)Not Null密碼(3)管理員信息表,如表3-3所示。表3-3 管理員基本信息表admin字段名稱數(shù)據(jù)類型可否為空字段描述anoVarchar
33、(10)Not Null管理員賬號(主鍵)anameVarchar(10)Not Null管理員pwdVarchar(20)Not Null密碼levelVarchar(10)Not Null管理員級別(4)建議信息表,如表3-4所示。表3-4 建議基本信息表suggestion字段名稱數(shù)據(jù)類型可否為空字段描述idIntNot Null建議編號(主鍵)titleVarchar(100)Not Null標(biāo)題typeVarchar(10)Not Null類別anthorVarchar(10)Not Null寫信人timeDatetime默認系統(tǒng)日期寫信時間giverVarchar(10)Not N
34、ull收件人contentVarchar(1000)Not Null建議容stateVarchar(50)Not Null建議狀態(tài)(5)回復(fù)信息表,如表3-5所示。表3-5 回復(fù)信息表reply字段名稱數(shù)據(jù)類型可否為空字段描述idIntNot Null回復(fù)編號(主鍵)titleVarchar(100)Not Null標(biāo)題typeVarchar(10)Not Null類別anthorVarchar(10)Not Null寫信人timeDatetime默認系統(tǒng)日期寫信時間giverVarchar(10)Not Null收件人contentVarchar(1000)Not Null回件容stateV
35、archar(50)Not Null回件狀態(tài)(6)類別表,如表3-6所示。表3-6 類別信息表type字段名稱數(shù)據(jù)類型可否為空字段描述idIntNot Null類別編號(主鍵)nameVarchar(10)Not Null類別名稱(7)關(guān)鍵字信息表,如表3-7所示。表3-7 關(guān)鍵字信息表datakey字段名稱數(shù)據(jù)類型可否為空字段描述idIntNot Null關(guān)鍵字編號(主鍵)typeVarchar(10)Not Null類別名稱nameVarchar(50)Not Null關(guān)鍵字名稱(8)調(diào)查表信息表,如表3-8所示。表3-8 調(diào)查表信息表survey字段名稱數(shù)據(jù)類型可否為空字段描述idInt
36、Not Null調(diào)查表編號(主鍵)titleVarchar(50)Not Null主題timeVarchar(50)Not Null發(fā)表時間stopVarchar(50)Not Null截止時間anthorVarchar(50)Not Null發(fā)表人(9)題目信息表,如表3-9所示。表3-9 題目信息表question字段名稱數(shù)據(jù)類型可否為空字段描述idIntNot Null題目編號(主鍵)noIntNot Null題號typeVarchar(50)Not Null題目類別questionVarchar(500)Not Null題目容dateDatetime默認系統(tǒng)日期創(chuàng)建時間sidIntNo
37、t Null調(diào)查表號(10)選項信息表,如表3-10所示。 表3-10 選項信息表options字段名稱數(shù)據(jù)類型可否為空字段描述idIntNot Null選項編號(主鍵)optionsVarchar(50)Not Null選項容noIntNot Null題目編號sidIntNot Null調(diào)查表編號(11)調(diào)查表回復(fù)信息表,如表3-11所示。表3-11 調(diào)查表回復(fù)信息表answer字段名稱數(shù)據(jù)類型可否為空字段描述idIntNot Null回復(fù)編號(主鍵)answerVarchar(MAX)Not Null回答容noIntNot Null題目編號sidIntNot Null調(diào)查表編號people
38、Varchar(50)Not Null答題人2. 數(shù)據(jù)庫關(guān)系圖數(shù)據(jù)庫關(guān)系圖如圖3-13所示。圖3-13 數(shù)據(jù)庫關(guān)系圖第4章 詳細設(shè)計4.1 web. config配置文件為了保持系統(tǒng)的可移植性,采用對數(shù)據(jù)庫配置進行統(tǒng)一管理的方法,將程序中所用到的數(shù)據(jù)庫連接字符串信息放于web.config配置文件中,在程序中對該文件的這一配置進行調(diào)用,實現(xiàn)統(tǒng)一更改、統(tǒng)一使用。在web.config中,主要做了數(shù)據(jù)庫連接字符串的設(shè)置,將數(shù)據(jù)庫連接字符串設(shè)置放在<connectionString>與</connectionString之間。本系統(tǒng)設(shè)置的數(shù)據(jù)庫連接字符串如下:<connect
39、ionStrings> <addname="ConnectionString" connectionString="Data Source=.SQLEXPRESS; AttachDbFilename=|DataDirectory|Information.mdf; Integrated Security=True;User Instance=True"/></connectionStrings>在以上代碼段中,.SQLEXPRESS為服務(wù)器名稱(即本機),AttachDbFilename表示數(shù)據(jù)庫的路徑和文件名,|DataDi
40、rectory|表示默認數(shù)據(jù)庫路徑App_Data,Integrated Security=True表示使用的是windows身份驗證,User Instance=True表示使用用戶實例8。4.2 數(shù)據(jù)庫操作類BaseClass在本程序中定義了一個數(shù)據(jù)庫操作類BaseClass,BaseClass被包含在GROUP.Manage命名空間中,其中定義了讀取數(shù)據(jù)和修改數(shù)據(jù)的一些基本方法,以便在程序中進行直接調(diào)用,減少代碼的冗余,并且方便修改和維護。以后需要使用BaseClass類的頁面,必須在頁面開頭使用using GROUP.Manage語句引用命名空間9。類結(jié)構(gòu)代碼如下:namespace
41、GROUP.Manage/命名空間開始 public class BaseClass:System.Web.UI.Page/類定義開始 String sqlconnstr; public BaseClass() /在構(gòu)造函數(shù)中,取數(shù)據(jù)庫連接串sqlconnstr=ConfigurationManager.ConnectionStrings"ConnectionString".ConnectionString;public DataTable ReadTable(String strSql) /從數(shù)據(jù)庫讀取數(shù)據(jù),并返回一個DataTable DataTable dt = ne
42、w DataTable(); SqlConnection sqlconn = new SqlConnection(sqlconnstr); sqlconn.Open(); SqlDataAdapter Cmd = new SqlDataAdapter(strSql, sqlconn); Cmd.Fill(dt); sqlconn.Close(); return dt; public DataSet ReadDataSet(String strSql) /從數(shù)據(jù)庫讀取數(shù)據(jù),并返回一個DataSet DataSet ds = new DataSet(); SqlConnection sqlconn
43、 = new SqlConnection(sqlconnstr); sqlconn.Open(); SqlDataAdapter Cmd = new SqlDataAdapter(strSql, sqlconn); Cmd.Fill(ds); sqlconn.Close(); return ds; public void execsql(String strSql) /執(zhí)行SQL更新語句 SqlConnection sqlcoon = new SqlConnection(sqlconnstr); SqlCommandsqlcommand = new SqlCommand(strSql,sqlc
44、oon); sqlcoon.Open(); sqlcommand.ExecuteNonQuery(); sqlcoon.Close(); 4.3 AJAX技術(shù)在頁面中的應(yīng)用ASP.NET AJAX采用異步編程方式,提供對客戶端腳本的自動管理,利用ASP.NET AJAX服務(wù)器控件,能夠?qū)崿F(xiàn)局部頁面更新的效果。ASP.NET AJAX主要控件有:ScriptManager、UpdatePanel、UpdateProgress和Timer。ScriptManager控件是ASP.NET AJAX的核心,它提供處理頁面上的所有ASP.NET AJAX控件的支持,并且每個頁面只能有一個ScriptMa
45、nager控件。UpdatePanel控件是ASP.NET AJAX中很重要的一個控件,它可以用來創(chuàng)建局部更新的Web應(yīng)用程序。開發(fā)者只需要在頁面上添加ScriptManager控件和UpdatePanel控件就可以自動實現(xiàn)局部更新。本系統(tǒng)中的大部分頁面主要就是用這兩個控件來實現(xiàn)頁面局部更新的10。例如:在學(xué)生填寫調(diào)查表的頁面中,學(xué)生在選擇所要填寫的調(diào)查表時,用到了兩個下拉菜單,選擇前面一個下拉菜單里的容后面一個下拉菜單里的容會自動的改變。在使用了AJAX技術(shù)后,這個操作就不會每次都刷新頁面了。具體設(shè)計如圖4-1所示。圖4-1 學(xué)生填寫調(diào)查表頁面設(shè)計圖4.4 頁面關(guān)系本系統(tǒng)由多個頁面組成,任何
46、用戶都需要進入登陸頁面進行登陸,經(jīng)身份驗證合法后,才可以進入系統(tǒng),進行相應(yīng)的操作。本系統(tǒng)所有頁面的關(guān)系如圖4-2所示。 圖4-2 頁面關(guān)系圖 選擇學(xué)生身份登陸成功后,將進入學(xué)生功能頁面,在此頁面有與學(xué)生相關(guān)的所有操作,其中包括寫建議(write.aspx)頁面,收件箱(index.aspx)頁面,修改密碼(pwd.aspx)頁面,填寫調(diào)查表(question.aspx)頁面。選擇教師身份登陸成功后,將進入教師頁面,在此頁面有與教師相關(guān)的所有操作,其中包括收件箱(teacher-index.aspx)頁面,查看詳細建議(teacher-detile.aspx)頁面,回復(fù)建議(teacher-re
47、ply.aspx)頁面,修改密碼(teacher-pwd.aspx)頁面。選擇管理員身份登陸成功后,將進入管理員頁面,在此頁面有與管理員相關(guān)的所有操作,其中包括管理員職責(zé)(admin.aspx)頁面,收件箱(admin-index.aspx)頁面,建議管理(admin-suggestion.aspx)頁面,學(xué)生管理(admin-student.aspx)頁面,教師管理(admin-teacher.aspx)頁面,管理員管理(admin-adminstor.aspx)頁面,關(guān)鍵字管理(admin-datakey.aspx)頁面,類別管理(admin-type.aspx)頁面,建議信息統(tǒng)計(adm
48、in-suggestion-stats.aspx)頁面,調(diào)查表管理(admin-survey.aspx)頁面,題目管理(samin-question.aspx)頁面,調(diào)查信息統(tǒng)計(damin-survey-stats.aspx)頁面。4.5 首頁(登錄頁面)用戶必須首先輸入賬號和密碼,然后選擇正確的身份類型,才能進入系統(tǒng)并進行相應(yīng)的操作,否則,無法進入系統(tǒng)。系統(tǒng)的首頁設(shè)計如圖4-3所示。圖4-3 系統(tǒng)首頁界面4.6 母版頁模板頁是用于設(shè)置頁面外觀的模板,是一種特殊的網(wǎng)頁文件,母版頁是用作ASP.NET Web應(yīng)用程序中容頁的模板容器和合并頁,其擴展名為.master。每個模板頁中可以包含一個或
49、多個容頁,使用模板頁可以統(tǒng)一管路和定義具有一樣布局風(fēng)格的頁面,給網(wǎng)頁設(shè)計和修改帶來極大的方便11。本設(shè)計中對三種用戶分別設(shè)計了三個母版頁,從而保證了同一類用戶的頁面框架一樣,實現(xiàn)結(jié)構(gòu)和容的共享。學(xué)生、教師、管理員三類用戶的母版頁設(shè)計標(biāo)題、頁腳都一樣,只有左邊導(dǎo)航欄功能有所差別,此處只列舉管理員模板頁如圖4-4所示。圖4-4 管理員母版頁4.7 學(xué)生功能設(shè)計學(xué)生功能主要包括:寫建議,收件箱,修改密碼,填寫調(diào)查表四項功能。4.7.1 寫建議學(xué)生可以給教師和管理員寫建議,且必須填寫建議主題和容,學(xué)生根據(jù)建議容選擇合適的建議類型。學(xué)生寫建議的頁面如圖4-5所示。圖4-5 學(xué)生寫建議頁面4.7.2 學(xué)生
50、收件箱教師和管理員給學(xué)生的回信都存儲在收件箱中,學(xué)生可以查看教師或管理員回復(fù)信息的詳細容,學(xué)生還可以對收件箱的信息進行刪除操作。學(xué)生收件箱的頁面如圖4-6所示。圖4-6 學(xué)生收件箱頁面4.7.3 學(xué)生修改密碼 學(xué)生正確輸入原始密碼后,可以更改密碼,學(xué)生修改密碼的頁面如圖4-7所示。圖4-7 學(xué)生修改密碼頁面4.7.4 填寫調(diào)查表學(xué)生選擇所要填寫的調(diào)查表進行填寫,同一個調(diào)查表每個學(xué)生只能填寫一次,學(xué)生在填寫調(diào)查表時必須填寫每一個問題,否則不能正常提交。學(xué)生填寫調(diào)查表的頁面如圖4-8所示。圖4-8 學(xué)生填寫調(diào)查表頁面學(xué)生填寫調(diào)查表的流程圖如圖4-9所示。圖4-9 學(xué)生填寫調(diào)查表流程圖4.8 教師功
51、能設(shè)計教師功能主要包括:收件箱,修改密碼兩項功能。4.8.1 教師收件箱學(xué)生給教師的建議都存儲在收件箱中,教師可以查看詳細建議信息,教師還可以對收件箱的信息進行刪除操作。教師收件箱的頁面如圖4-10所示。教師收件箱功能流程圖如圖4-11所示。圖4-10 教師收件箱頁面圖4-11教師收件箱功能流程圖4.8.2 教師修改密碼 教師正確輸入原始密碼后,可以更改密碼,教師修改密碼的頁面如圖4-12所示。圖4-12 教師修改密碼頁面4.9 管理員功能設(shè)計管理員功能主要包括:收件箱,建議管理,用戶(學(xué)生、教師、管理員)管理,關(guān)鍵字管理,類別管理,調(diào)查表管理,題目管理,建議信息統(tǒng)計和調(diào)查表信息統(tǒng)計等九項功能
52、。4.9.1 管理員收件箱管理員收件箱功能和教師收件箱功能基本一樣,此處就不再詳細介紹。4.9.2 建議管理管理員可以根據(jù)“類別”和“關(guān)鍵字”查找相關(guān)建議,管理員可查看詳細信息,并可對其進行類別的修改或?qū)⑵鋭h除,還可以進行添加關(guān)鍵字等操作。管理員建議管理的頁面如圖4-13所示。圖4-13 管理員建議管理頁面4.9.3 用戶管理用戶管理包括:學(xué)生信息管理,教師信息管理和管理員信息管理三項。1. 學(xué)生信息管理管理員可以查看、修改、添加、刪除學(xué)生信息。2. 教師信息管理管理員可以查看、修改、添加、刪除教師信息。3. 管理員信息管理管理員分為高級管理員和普通管理員兩個級別,高級管理員可以添加、修改和刪
53、除管理員信息,普通管理員沒有這個權(quán)限,其它功能沒有區(qū)別。三種用戶管理頁面基本一樣,因此此處只列舉出學(xué)生信息管理頁面。學(xué)生信息管理的頁面如圖4-14所示。4.9.4 類別管理管理員可以查看、修改、添加、刪除建議類別。建議類別管理的頁面如圖4-15所示。圖4-14 學(xué)生信息管理頁面圖4-15 建議類別管理頁面4.9.5 關(guān)鍵字管理關(guān)鍵字是分類別進行存儲的,管理員可以根據(jù)類別查看相應(yīng)的關(guān)鍵字,還可以修改、添加、刪除關(guān)鍵字。關(guān)鍵字管理的頁面如圖4-16所示。圖4-16 關(guān)鍵字管理頁面4.9.6 調(diào)查表管理調(diào)查表生成功能是本系統(tǒng)設(shè)計中的一個難點。一般上發(fā)布的調(diào)查表都是靜態(tài)的,即調(diào)查表的容是網(wǎng)頁的組成部分
54、,要修改調(diào)查表的容必須修改整個網(wǎng)頁。本系統(tǒng)能夠?qū)崿F(xiàn)調(diào)查表的創(chuàng)建和編輯功能,使管理員能隨時創(chuàng)建新的調(diào)查表并進行發(fā)布。以下詳細說明是如何設(shè)計的。1. 設(shè)計思想調(diào)查表功能是模擬網(wǎng)上考試生成試卷的原理實現(xiàn)。在設(shè)計中首先要把調(diào)查表信息進行結(jié)構(gòu)化地分類,調(diào)查表題目的形式分為單選、多選和問答三種類型,這三種類型的題目在一調(diào)查表中自由排列組合,形成一單獨的調(diào)查表。調(diào)查表的設(shè)計分別由調(diào)查表基本信息、調(diào)查表題目信息、調(diào)查表題目選項信息三個容組成。要使系統(tǒng)能夠動態(tài)地發(fā)布調(diào)查表,實時接收被調(diào)查者信息,需要建立一個用于動態(tài)交換數(shù)據(jù)的數(shù)據(jù)庫,定義反應(yīng)調(diào)查表組成的結(jié)構(gòu)化表。調(diào)查表的輸入和發(fā)布都通過這些特定的數(shù)據(jù)表進行動態(tài)讀寫和管理。在編輯調(diào)查表時,將所要表達的調(diào)查容結(jié)構(gòu)化,填入到相應(yīng)的數(shù)據(jù)庫表中。發(fā)布調(diào)查表時,發(fā)布程序按照調(diào)查表的題目順序和題目選項順序,到數(shù)據(jù)庫中讀取相關(guān)調(diào)查表的容,靈活地在網(wǎng)頁上發(fā)布調(diào)查表12。2. 解決方法設(shè)計時對調(diào)查表信息,調(diào)查表題目和調(diào)查表題目選項分開進行管理,在數(shù)據(jù)庫中建立三個表分別存儲相關(guān)信息,這樣便于管理員進行操作,代碼也比較容易實現(xiàn)。 調(diào)查表功能的實現(xiàn)包括四個部分,第一
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 上海二手房產(chǎn)交易協(xié)議關(guān)鍵條款(2024版)版B版
- 小學(xué)教師如何運用評價系統(tǒng)進行課堂管理
- 市場營銷專業(yè)掌握市場脈搏
- 教育大數(shù)據(jù)在小學(xué)數(shù)學(xué)教學(xué)中的應(yīng)用
- 二零二五版民商法擔(dān)保合同標(biāo)的執(zhí)行細則4篇
- 學(xué)生心理健康教育的挑戰(zhàn)與對策
- 校園公交亭租賃合同2025版:含設(shè)施升級條款3篇
- 現(xiàn)代家庭的日常聚會美食規(guī)劃建議
- 演講者的技巧學(xué)術(shù)會議論文匯報的關(guān)鍵要素
- 二零二五版長途客運駕駛員勞動合同規(guī)范3篇
- 化學(xué)-河南省TOP二十名校2025屆高三調(diào)研考試(三)試題和答案
- 智慧農(nóng)貿(mào)批發(fā)市場平臺規(guī)劃建設(shè)方案
- 2023年水利部黃河水利委員會招聘考試真題
- Python編程基礎(chǔ)(項目式微課版)教案22
- 半導(dǎo)體工藝用膠帶全球市場、份額、市場規(guī)模、趨勢、行業(yè)分析報告2024-2030年
- 建筑施工中常見的安全問題及解決方法
- 近五年重慶中考物理試題及答案2023
- 乳腺導(dǎo)管原位癌
- 冷庫管道應(yīng)急預(yù)案
- 《學(xué)習(xí)教育重要論述》考試復(fù)習(xí)題庫(共250余題)
- 網(wǎng)易云音樂用戶情感畫像研究
評論
0/150
提交評論