版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 本科畢業(yè)論文</b></p><p> (科研訓(xùn)練、畢業(yè)設(shè)計)</p><p> 題 目:基于Web的可配置信息發(fā)布收集系統(tǒng)</p><p><b> 姓 名:</b></p><p> 學(xué) 院:軟件學(xué)院</p><p>&
2、lt;b> 系:</b></p><p> 專 業(yè):軟件工程</p><p><b> 年 級: </b></p><p><b> 學(xué) 號: </b></p><p> 指導(dǎo)教師(校內(nèi)): 職稱:教授</p>
3、<p> 指導(dǎo)教師(校外): 職稱:</p><p><b> 年 月 日</b></p><p> 基于Web的可配置信息發(fā)布收集系統(tǒng)</p><p> [摘要] 隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,基于Browse/Server架構(gòu)的Web應(yīng)用系統(tǒng)被各行業(yè)廣泛應(yīng)用。在各種信息化平臺中,信息發(fā)布、收集乃至統(tǒng)
4、計系統(tǒng)是一個重要的組成部分,它所采取的方式及其遵循的模式直接影響了信息化平臺的運作效率和執(zhí)行質(zhì)量。當(dāng)前,在大量數(shù)據(jù)需要進行收集和發(fā)布的情況下,原有的系統(tǒng)模式已經(jīng)不能滿足信息發(fā)布收集多、變、快、準(zhǔn)的要求。開發(fā)新的Web下的可配置信息發(fā)布收集系統(tǒng)成為各行業(yè)信息化過程中迫切需要解決的問題。</p><p> 本文針對以上需求,提出了Web下可配置信息發(fā)布解決方案,并以高校信息化平臺為背景,設(shè)計、實現(xiàn)了一個面向高校的基
5、于B/S構(gòu)架的可配置信息發(fā)布、收集系統(tǒng)。</p><p> 文中首先分析了現(xiàn)有高校信息發(fā)布、收集方式的不足,并論述了新的解決方案,加以比較。隨后介紹了新方案中涉及的ASP.NET、XML、面向?qū)ο笳Z言、系統(tǒng)分層架構(gòu)等技術(shù)。本文第四章中,詳細介紹了基于Web的以XML為驅(qū)動的信息發(fā)布、收集系統(tǒng)的實現(xiàn)。對該系統(tǒng)進行了系統(tǒng)需求分析、流程分析、數(shù)據(jù)庫設(shè)計和用戶界面設(shè)計,并實現(xiàn)了其中的主要模塊。</p>&
6、lt;p> 論文所使用的分析及設(shè)計過程,具有相當(dāng)?shù)钠毡樾?,可以?yīng)用到其他基于Web的信息發(fā)布、收集、統(tǒng)計系統(tǒng)開發(fā)中。</p><p> [關(guān)鍵詞] 可配置 動態(tài)表格 信息收集統(tǒng)計 Asp.net Xml</p><p> Online Reporting Information System</p><p> [Abstract] With t
7、he rapid development of Internet, web system based on browse/server is wildly applied in many fields. As an important part, reporting system has great influence on the web system efficiency and speed. How to build a flex
8、ible and credible dynamic reporting system by making use of the up-to-date Internet programming technique has become the hot issue in computer field.</p><p> A dynamic reporting system should have at lease
9、three functions:</p><p> designing and configuring reports on the website by IE or other browses</p><p> saving user interface information of the dynamic reports so as to reload it at anytime&
10、lt;/p><p> saving data information of reports submitted by different users</p><p> This dissertation designs a dynamic reporting system based on B/S under the background of high school informatio
11、n system. Firstly, it discusses the strongpoint of the dynamic reporting system compared with traditional reporting system. Secondly, it introduces such techniques as ASP.NET, XML, Object Orientation Programming and 3-ti
12、er architecture. The forth Chapter of the dissertation designs a dynamic reporting system by use of the combination of XML and ASP. NET techniques, completes system ana</p><p> [Key Words] Dynamic report; C
13、onfigurable; Information; Asp.net; Xml</p><p><b> 目錄</b></p><p> 第 1 章引言5</p><p> 1.1研究背景5</p><p> 1.2研究目的與內(nèi)容5</p><p> 1.3系統(tǒng)整體框架7&
14、lt;/p><p> 1.4本文組織7</p><p> 第 2 章系統(tǒng)背景8</p><p> 2.1高校信息化概述8</p><p> 2.2現(xiàn)有高校信息發(fā)布、收集解決方案9</p><p> 2.3本文提出的解決方案11</p><p> 第 3 章系統(tǒng)所涉及
15、的技術(shù)及其概述13</p><p> 3.1面向?qū)ο蟮姆治龊驮O(shè)計13</p><p> 3.2分層架構(gòu)13</p><p> 3.3XML技術(shù)14</p><p> 3.4ASP.NET技術(shù)14</p><p> 第 4 章基于Web的以XML驅(qū)動的信息發(fā)布、收集系統(tǒng)構(gòu)建15</p
16、><p> 4.1系統(tǒng)開發(fā)與運行環(huán)境15</p><p> 4.2系統(tǒng)需求分析15</p><p> 4.3業(yè)務(wù)流程分析16</p><p> 4.4數(shù)據(jù)庫設(shè)計17</p><p> 4.5界面設(shè)計24</p><p> 4.6模塊實現(xiàn)25</p>
17、<p> 4.7系統(tǒng)頁面功能描述33</p><p> 第 5 章結(jié)論36</p><p> 5.1系統(tǒng)存在的不足36</p><p><b> 5.2展望36</b></p><p><b> 引言</b></p><p><b&g
18、t; 研究背景</b></p><p> 隨著信息時代的到來,網(wǎng)絡(luò)正在加快滲透社會各行各業(yè)的步伐,現(xiàn)今的技術(shù)徹底改變了“時空”的概念,使信息得以充分利用。作為Intranet的一個重要組成部分,信息管理系統(tǒng)也起著很大作用,在Internet盛行之前,信息管理系統(tǒng)已廣泛地應(yīng)用于各行各業(yè)中,在各企事業(yè)單位的行政管理中,使各項日常事務(wù)處理走向自動化、系列化、規(guī)范化、標(biāo)準(zhǔn)化,大大提高了工作效率,己被越來越
19、多的人門所認識。</p><p> 在形式繁多的Web管理系統(tǒng)中,無一例外涉及到各類信息的發(fā)布、收集、反饋乃至統(tǒng)計分析。數(shù)據(jù)如何在發(fā)布者和用戶之間流暢傳遞,并能保持實時性、高準(zhǔn)確度和高度自動化,已經(jīng)成為Web管理系統(tǒng)的一個難題??v觀現(xiàn)有的網(wǎng)上報送資料,大多數(shù)還停留在靜態(tài)的網(wǎng)上收集數(shù)據(jù)狀態(tài)——通過網(wǎng)頁的靜態(tài)表格填報,或提供下載表格,然后再通過電子郵件或以紙張的方式報送給信息發(fā)布部門。這種方式雖然減少了外勤工作,但
20、是所收集的資料還需要相關(guān)部門的人員手工再次錄入到數(shù)據(jù)庫中。這樣不僅容易出錯,還非常費時,因此為避免出錯而增加復(fù)核引致的工作量并未減少。比如中國國家統(tǒng)計局及其全國各地的統(tǒng)計部門,無論是企業(yè)網(wǎng)上收集統(tǒng)計資料還是下級統(tǒng)計部門向上級統(tǒng)計部門報送統(tǒng)計數(shù)據(jù)均使用這種靜態(tài)方式報送[1]。這樣的工作流程造成了信息發(fā)布部門和信息提交者之間的雙重困難,失去了Web 應(yīng)用開放性、廣泛訪問性、靈活性的優(yōu)勢。</p><p><b&
21、gt; 研究目的與內(nèi)容</b></p><p> 本文作者身處高校,深切體會了高校信息化平臺帶來的各種便利。但同時也對該平臺下信息發(fā)布、收集的陳舊方式深感缺憾。因此本文以廈門大學(xué)高校信息化平臺下的信息發(fā)布、收集子系統(tǒng)為切入點,闡述了基于Web下XML驅(qū)動的可配置信息發(fā)布收集系統(tǒng)的提出、設(shè)計以及實現(xiàn)過程,并將其實施于作者所在的廈門大學(xué)信息化建設(shè)項目組的科研管理系統(tǒng)中。廈門大學(xué)科信息化建設(shè)項目組成立于
22、2004年5,作者有幸參加其中科研管理系統(tǒng)的開發(fā)。該開發(fā)小組由7人組成。其組織結(jié)構(gòu)如圖1.1所示。作者負責(zé)信息發(fā)布收集子系統(tǒng)的開發(fā)。</p><p> 可配置信息發(fā)布收集系統(tǒng)開發(fā)的目的是改現(xiàn)有手工、半自動數(shù)據(jù)上報、收集、統(tǒng)計模式為統(tǒng)一的基于Web的動態(tài)發(fā)布、自動生成、可配置管理模式。達到數(shù)據(jù)發(fā)布收集的自動化、系列化、規(guī)范化、標(biāo)準(zhǔn)化。</p><p> 數(shù)據(jù)錄入收集的理想狀況,是在有新的
23、數(shù)據(jù)需要收集的時候,由非技術(shù)人員通過易用的、基于Web的圖形界面來配置數(shù)據(jù)錄入頁面,然后將頁面分配給不同的用戶或用戶群體。這樣的數(shù)據(jù)錄入系統(tǒng)便可以解決靜態(tài)方式報送帶來的問題,同時具備更多的優(yōu)點,比如:</p><p> 數(shù)據(jù)錄入頁面可以由非技術(shù)人員來配置和分配。</p><p> 非技術(shù)人員可以對數(shù)據(jù)錄入頁面進行管理。</p><p> 用戶在登陸系統(tǒng)以后便可
24、以知道自己需要填寫哪些頁面提交信息,而不必去查詢自己需要提交哪些頁面。</p><p> 系統(tǒng)可以應(yīng)付所有的數(shù)據(jù)錄入的變化,不論是用戶界面上的變化,還是具體數(shù)據(jù)內(nèi)容的變化,系統(tǒng)都可以在運行的時候進行配置和修改。</p><p> 基于這樣的思路,系統(tǒng)的整體構(gòu)架和主要界面如下所述。</p><p><b> 系統(tǒng)整體框架</b></p
25、><p><b> 本文組織</b></p><p> 本文在結(jié)構(gòu)上將做如下的安排:</p><p> 第一章介紹了系統(tǒng)的研究背景、研究目的及研究內(nèi)容,簡要概述了系統(tǒng)整體構(gòu)架。</p><p> 第二章分析現(xiàn)有信息發(fā)布收集的不足,并提出本文的核心-Web下可配置信息發(fā)布收集解決方案,加以比較,論述其可行性。</
26、p><p> 第三章介紹新方案中涉及的ASP.NET、XML、面向?qū)ο笳Z言、系統(tǒng)分層架構(gòu)等技術(shù)。</p><p> 第四章詳細介紹了基于Web的以XML為驅(qū)動的信息發(fā)布、收集系統(tǒng)的實現(xiàn)。對該系統(tǒng)進行了系統(tǒng)需求分析、流程分析、數(shù)據(jù)庫設(shè)計和用戶界面設(shè)計,并實現(xiàn)了其中的主要模塊。</p><p> 第五章全面總結(jié)本文所闡述的方案和系統(tǒng),實現(xiàn)的意義及發(fā)展趨勢。分析該解決方
27、案存在的問題,并就提出的問題給出了分析和改進方案。</p><p><b> 系統(tǒng)背景</b></p><p><b> 高校信息化概述</b></p><p> 校園綜合信息平臺是以網(wǎng)絡(luò)為基礎(chǔ),利用先進的信息化手段和工具,實現(xiàn)從環(huán)境(包括設(shè)備、教室等)、資源(如圖書、講義、課件、信息等)、到活動(包括教、學(xué)、管理、
28、服務(wù)、辦公等)的全部數(shù)字化,在傳統(tǒng)校園的基礎(chǔ)上構(gòu)建一個數(shù)字空間以拓展現(xiàn)實校園的時間和空間維度,從而提升了傳統(tǒng)校園的效率,擴展了傳統(tǒng)校園的功能,最終實現(xiàn)教育過程的全面信息化。</p><p> 校園綜合信息平臺建設(shè)是分階段、分層次的,它經(jīng)歷的是由硬到軟、由下而上、螺旋上升的建設(shè)過程。校園綜合信息平臺也是一個層次化的結(jié)構(gòu),其體系結(jié)構(gòu)可以用一系列同心圓表示,內(nèi)圓是核心,是基礎(chǔ),外圓是在內(nèi)圓的基礎(chǔ)上提供的更進一步的服務(wù)
29、。按照功能劃分,校園綜合信息平臺可以分為六層,其結(jié)構(gòu)圖如圖2.1所示:</p><p> 其中的基礎(chǔ)信息服務(wù)是信息流動的軟件基礎(chǔ),包括SMS校園通、電子郵件、文件傳輸、信息發(fā)布、域名服務(wù)、身份認證、目錄服務(wù)、安全服務(wù)、計費管理等;而本文所提出的動態(tài)可配置信息發(fā)布收集系統(tǒng)正是處于這個層面。</p><p> 現(xiàn)有高校信息發(fā)布、收集解決方案</p><p> 現(xiàn)有
30、信息發(fā)布、收集方式</p><p> 在開發(fā)數(shù)據(jù)驅(qū)動的Web信息系統(tǒng)的時候,常見的Web頁面會是用戶進行數(shù)據(jù)錄入的頁面。開發(fā)特定的數(shù)據(jù)錄入頁面的時候,通常是從需求分析開始,需要知道系統(tǒng)需要向用戶收集何種信息,然后根據(jù)需求設(shè)計Web頁面,包括創(chuàng)建Web圖形界面以及所必須的數(shù)據(jù)庫操作代碼,必要的時候還要為此頁面的信息設(shè)計數(shù)據(jù)庫中的表結(jié)構(gòu)。</p><p> 當(dāng)數(shù)據(jù)錄入頁面的需求事先已知并且
31、對系統(tǒng)所有的用戶都一致的時候,開發(fā)這樣的數(shù)據(jù)錄入頁面是十分簡單的任務(wù)。然而,當(dāng)需要動態(tài)的數(shù)據(jù)錄入頁面,而且從Web圖形界面到數(shù)據(jù)庫的保存都需要動態(tài)可配置的時候,任務(wù)就變得艱巨起來。例如,某一時期,學(xué)校需要教師提交一系列的報表,報表的格式以及內(nèi)容是經(jīng)常變化的,并且不同的教師或不同類型的教師需要錄入的數(shù)據(jù)不一樣。</p><p> 在通常情況下有兩種方式可以解決:</p><p> 為每一
32、個數(shù)據(jù)錄入做不同的Word文檔,讓教師在網(wǎng)站上下載,下載的過程一般需要教師手動的查找自己需要的Word文檔。教師下載并填寫好文檔以后再上傳給系統(tǒng)或者打印交給上級單位。</p><p> 由系統(tǒng)開發(fā)人員臨時制作這樣的數(shù)據(jù)錄入頁面,然后修改以前的頁面連接,把新加的頁面加入原有的系統(tǒng)。</p><p> 第一種方法雖然很直接,工作量也不大,但是給每個教師的數(shù)據(jù)錄入帶來了不方便,也影響了學(xué)校數(shù)
33、據(jù)收集的效率。第二種方法,非技術(shù)人員的工作量減少了,技術(shù)人員臨時制作靜態(tài)數(shù)據(jù)錄入頁面亦非難事,但是這造成了發(fā)布系統(tǒng)的多變性,風(fēng)格、形式難以統(tǒng)一,當(dāng)頁面數(shù)量龐大,后期維護將相當(dāng)困難。而且這樣的開發(fā)方式,如果頁面沒有進行充分的調(diào)試和測試,很容易出現(xiàn)錯誤乃至系統(tǒng)崩潰。</p><p> 圖2.2以當(dāng)前高校的信息發(fā)布、收集模式為例,說明了這兩種模式的工作流程及問題所在:</p><p><
34、b> 信息發(fā)布的瓶頸</b></p><p> 當(dāng)前信息發(fā)布收集的幾大突出問題:</p><p> 信息發(fā)布無法面向特定對象;檢索不易;容易延誤</p><p> 每一種信息發(fā)布都有其特定的發(fā)布對象。例如,學(xué)生不應(yīng)當(dāng)有查看教師表格的權(quán)限;院系教師不必關(guān)心教學(xué)秘書所需提交的信息。</p><p> 現(xiàn)行的信息發(fā)布,無
35、法針對特定的用戶、角色或者用戶群。換言之,要求收集的數(shù)據(jù)通過網(wǎng)頁的靜態(tài)表格或表格下載的方式發(fā)布到網(wǎng)站,任何合法用戶登陸進網(wǎng)站時都可以瀏覽得到。這樣,特定用戶其實瀏覽到了許多與之無關(guān)的頁面、數(shù)據(jù),造成了檢索的不易甚至是誤報、錯報、重復(fù)填報。面向某個單位、部門或者是整個高校,各類需要提交的表格、文件等不計其數(shù),而面向該單位下的某個特定用戶,很可能需要填寫、提交的表格、文件數(shù)量是有限的?,F(xiàn)行的系統(tǒng)中,往往出現(xiàn)這樣的情況:某個用戶登陸系統(tǒng)之后,
36、在表格下載區(qū)上百個表格中,尋找不到自己應(yīng)該填寫的表格。造成了信息提交的延誤。</p><p> 用戶必須填寫所有信息</p><p> 每一份需要提交的表格、文件中需填寫的字段一般非常之多。筆者進行本文系統(tǒng)需求分析過程中,曾與某處負責(zé)數(shù)據(jù)收集的教師交談,據(jù)他反應(yīng),在他們部門,用現(xiàn)行的填表方式,一個工作人員一天之內(nèi)平均只能填寫10份表格文件。效率之低令人驚異。而這樣的情況絕非個例。筆者身
37、為學(xué)生,平常也需要提交各種表格,發(fā)覺平常眾多表格雖然字段繁多,但各表格之間的許多字段均為重復(fù)字段,例如:姓名、性別、年齡、院系、學(xué)號、籍貫等等。這些字段信息在校園信息化的中央數(shù)據(jù)庫中都有保存,現(xiàn)行的信息填報系統(tǒng)無法將數(shù)據(jù)庫中的字段信息與表格字段內(nèi)容事前關(guān)聯(lián),造成相同信息的重復(fù)填寫,降低了填報的效率,同時也增加了用戶填寫過程的出錯風(fēng)險。</p><p> 用戶填寫不規(guī)范,提交之后不合格信息多,審核困難</p
38、><p> 用戶對表格、文件設(shè)計不甚了解,當(dāng)他們面對一份空白的表格或者文件,而又沒有專門人員進行指導(dǎo)和說明,很容易誤解表格信息,導(dǎo)致誤填。這樣,提交后的表格需經(jīng)過審核人員對填報信息逐個字段審核,一旦發(fā)現(xiàn)不合格信息,需要反饋給用戶重新填寫,再次提交。如此往復(fù),一直到合格。在本身填報效率就不是很高的填報系統(tǒng)上,用這樣的方式收集信息,讓發(fā)布者和提交者都疲憊不堪,完全體會不到辦公自動化的優(yōu)越性。</p>&l
39、t;p><b> 本文提出的解決方案</b></p><p> 針對以上幾大問題,本文提出了一個相應(yīng)的解決方案,可以解決靜態(tài)方式報送帶來的問題,同時具備更多的優(yōu)點。</p><p> 建立一個基于B/S構(gòu)架下的Web信息發(fā)布、收集系統(tǒng)。使得從信息發(fā)布方到需要提交信息的用戶,乃至信息統(tǒng)計部門,都在同一個系統(tǒng)平臺上操作數(shù)據(jù)。達到數(shù)據(jù)錄入、收集、統(tǒng)計的統(tǒng)一性;同
40、時把用戶從海量的信息中解救出來,使之能方便快捷地接觸到屬于自己的信息。信息提交方式由原來的下載表格自行填寫等統(tǒng)一成登陸網(wǎng)站提交,接口統(tǒng)一,界面友好,用戶接受度高。</p><p> 本文系統(tǒng)下的信息發(fā)布頁面,摒棄了以往手動制作靜態(tài)頁面的做法,而只需要信息發(fā)布方按紙質(zhì)表格、文件的格式,用一般的網(wǎng)頁開發(fā)工具:FrontPage、Dreamwaver等畫出空白表格格式,轉(zhuǎn)存成.XML模板即可。系統(tǒng)會自動解析XML中存
41、儲的表格板式信息,呈現(xiàn)于Web頁面。無論何種排版、什么樣的文件,經(jīng)過本文系統(tǒng)解析之后,都將動態(tài)加載到Web中,無需根據(jù)每種不同表格,開發(fā)多個頁面。</p><p> 本文系統(tǒng)提供了可視化的配置頁面。管理員在管理員界面中可以配置自己權(quán)限下的所有空白表格模板。即在Web下直接為空白表格增添字段??梢愿鶕?jù)表格需要,增加標(biāo)簽、輸入框、下拉框、復(fù)選框和單選按鈕等。配置好的表格節(jié)點信息存儲在相應(yīng)XML文件中,隨時可以再次配
42、置修改。</p><p> 用戶錄入頁面動態(tài)加載。用戶選取應(yīng)填寫的表格,系統(tǒng)解析相應(yīng)XML文件中存儲的表格信息,動態(tài)加載完整的表格提交頁面。</p><p> 表格的預(yù)填。上文提到,種類繁多的表格中,有許多信息是中央數(shù)據(jù)庫中已經(jīng)存在的,并不需要用戶多次重復(fù)填寫。對于這些字段,本文系統(tǒng)支持管理員在配置頁面時綁定數(shù)據(jù)庫中已有字段,當(dāng)用戶登陸到自己的提交頁面,這些字段將根據(jù)該用戶的具體信息對
43、表格進行預(yù)填,這將大大減少用戶填寫的時間,也減少了不必要的填寫錯誤。</p><p> 本文系統(tǒng)中信息發(fā)布采取了“用戶和角色”的概念。將特定的表格分配給特定角色的用戶或者用戶群。比如,院系A(chǔ)的表格只分配給院系A(chǔ)的教師,這樣,其他院系教師登陸到同樣系統(tǒng),但無需瀏覽到院系A(chǔ)的表格文件信息。</p><p> 新舊信息發(fā)布收集方案對比</p><p> 表2.1顯示
44、了3種信息發(fā)布收集方案在性能和適用性上的對比:</p><p> 表2.1 信息發(fā)布收集方案對比表</p><p> 系統(tǒng)所涉及的技術(shù)及其概述</p><p> 面向?qū)ο蟮姆治龊驮O(shè)計</p><p> 本系統(tǒng)采用C#作為開發(fā)語言,使用面向?qū)ο蟮姆治龊驮O(shè)計。在面向?qū)ο蠓治龅倪^程中,強調(diào)的是在問題領(lǐng)域內(nèi)發(fā)現(xiàn)和描述對象或概念;在面向?qū)ο笤O(shè)計
45、過程中,強調(diào)的是定義軟件對象和這些軟件對象如何協(xié)作來滿足需求。</p><p> 在本系統(tǒng)的分析和設(shè)計中,我們強調(diào)各軟件組件的職責(zé)問題,為不同的軟件對象或組件分配其應(yīng)有的職責(zé)是關(guān)鍵也是最基本的工作。其中還應(yīng)用一些成熟的模式進行分析和設(shè)計,使系統(tǒng)各模塊結(jié)構(gòu)更清晰,工作更協(xié)調(diào)。</p><p> 在開發(fā)過程中,我們使用UML語言進行面向?qū)ο蟮慕?,用統(tǒng)一過程進行迭代開發(fā)。</p>
46、;<p><b> 分層架構(gòu)</b></p><p> 分層架構(gòu)是當(dāng)前比較流行的系統(tǒng)架構(gòu)模式,本系統(tǒng)采用三層架構(gòu)的模式,分別是表示層、業(yè)務(wù)層、數(shù)據(jù)層。此模式概述了每一層的職責(zé)以及組成每一層的組件,如圖3.1</p><p> 圖3.1顯示的 Three-Layered Services Application基本上是一個松散的三層體系結(jié)構(gòu),三層的概
47、要說明如下:</p><p> 表示層:表示層提供應(yīng)用程序的用戶界面 (UI)。這通常包括 Windows 窗體(用于智能客戶端應(yīng)用程序)和 ASP.NET 技術(shù)(用于基于瀏覽器的交互)的使用。</p><p> 業(yè)務(wù)層:業(yè)務(wù)層實現(xiàn)應(yīng)用程序的業(yè)務(wù)功能。業(yè)務(wù)層通常由使用一種或多種支持 .NET 的編程語言實現(xiàn)的大量組件組成。</p><p> 數(shù)據(jù)層:數(shù)據(jù)層提供
48、對外部系統(tǒng)(如數(shù)據(jù)庫)的訪問。該層涉及到的主要 .NET 技術(shù)是 ADO.NET。但是,在這里也經(jīng)常用到一些 .NET XML 功能。</p><p><b> XML技術(shù)</b></p><p> 可擴展標(biāo)記語言(Extensible Markup Language,XML)是由萬維網(wǎng)聯(lián)盟(World Wide Web Consortium,W3C )開發(fā)的,主
49、要目的是為了克服HTML的缺點,XML對于HTML來說,特點是:沒有預(yù)定義的標(biāo)記;更嚴格的語法。XML的應(yīng)用主要分為文檔應(yīng)用和數(shù)據(jù)應(yīng)用。在文檔應(yīng)用上XML的主要優(yōu)點在于它的重點是文檔的結(jié)構(gòu),這使得它獨立于傳播媒介。在數(shù)據(jù)應(yīng)用方面,通過XML形成了一個完整的體系,為數(shù)據(jù)的分發(fā)帶來了一種出版模式。用XML文檔可以來表示數(shù)據(jù)庫結(jié)構(gòu),還可以表示某種文檔的結(jié)構(gòu)。</p><p> 在本系統(tǒng)中,主要應(yīng)用XML在數(shù)據(jù)應(yīng)用方面
50、的功能,一方面通過XML來存儲和表示數(shù)據(jù)錄入頁面的文檔結(jié)構(gòu),用來存儲其外觀信息,另一方面通過XML來存儲教師所提交的信息,達到使用同使用數(shù)據(jù)庫同樣的效果。</p><p><b> ASP.NET技術(shù)</b></p><p> ASP.NET是Microsoft .NET Framework 中一種用于生成 Web 應(yīng)用程序和 XML Web services 的
51、技術(shù)。ASP.NET 頁在服務(wù)器上執(zhí)行并生成發(fā)送到桌面或移動瀏覽器的標(biāo)記(如 HTML、WML 或 XML)。ASP.NET頁使用一種已編譯的、由事件驅(qū)動的編程模型,這種模型可以提高性能并支持將應(yīng)用程序邏輯同用戶界面相隔離。ASP.NET 頁和使用 ASP.NET 創(chuàng)建的 XML Web services 文件包含用 Visual Basic .NET、C# .NET 或任何 .NET 兼容語言編寫的服務(wù)器端(而不是客戶端)邏輯。Web
52、 應(yīng)用程序和 XML Web services 利用了公共語言運行庫的功能,例如類型安全、繼承、語言互操作、版本控制和集成安全性等。</p><p> 本文系統(tǒng)應(yīng)用ASP.NET中可以在運行時動態(tài)創(chuàng)建服務(wù)器控件來達到產(chǎn)生動態(tài)數(shù)據(jù)錄入頁面的需求。</p><p> 基于Web的以XML驅(qū)動的信息發(fā)布、收集系統(tǒng)構(gòu)建</p><p><b> 系統(tǒng)開發(fā)與運
53、行環(huán)境</b></p><p> 表4.1 系統(tǒng)開發(fā)與運行環(huán)境表</p><p><b> 系統(tǒng)需求分析</b></p><p><b> 功能性需求</b></p><p> 具有用戶登陸、權(quán)限控制的功能。</p><p> 具有數(shù)據(jù)輸入頁面模板上傳的
54、功能。</p><p> 具有對模板進行配置的圖形化界面。</p><p> 具有對數(shù)據(jù)輸入頁面按用戶和角色分配的功能。</p><p> 具有查詢所收集的信息的功能。</p><p> 具有對數(shù)據(jù)輸入有按照數(shù)據(jù)庫原有信息進行預(yù)填寫的功能。</p><p> 具有對輸入數(shù)據(jù)按照頁面格式進行報表預(yù)覽的功能。&l
55、t;/p><p><b> 性能性需求</b></p><p> 由于系統(tǒng)的側(cè)重點是在完成功能性需求,對于系統(tǒng)的性能需求不做過多的考慮,主要有以下兩點:</p><p> 系統(tǒng)吞吐量和響應(yīng)時間。現(xiàn)有的系統(tǒng)吞吐量和響應(yīng)時間主要取決于作為服務(wù)器的機器的性能和網(wǎng)絡(luò)的狀況。</p><p> 系統(tǒng)的安全性。結(jié)構(gòu)上,后臺系統(tǒng)采
56、用的是與前臺系統(tǒng)(即與用戶交流的部分)完全獨立的結(jié)構(gòu),降低了受到惡意用戶攻擊的可能性。另外,后臺應(yīng)用程序采取了使用用戶名登錄的加密措施,以保證數(shù)據(jù)庫操作的安全性。</p><p><b> 業(yè)務(wù)流程分析</b></p><p> 信息發(fā)布、收集系統(tǒng)的業(yè)務(wù)流程分析分為:頁面配置流程分析、信息分配流程分析、用戶提交修改流程分析、查詢修改流程分析。</p>
57、<p><b> 頁面配置流程分析</b></p><p> 管理員登陸之后可對空白表格進行字段綁定、字段類型配置。具體流程如圖4.1所示:</p><p><b> 信息分配流程分析</b></p><p> 管理員可按用戶姓名和按用戶角色兩種方式把信息錄入頁面權(quán)限分配給對應(yīng)用戶或者用戶群。</
58、p><p> 用戶錄入、修改流程分析</p><p> 管理員登陸之后可對空白表格進行字段綁定、字段類型配置。具體流程如圖4.2所示:</p><p><b> 查詢流程分析</b></p><p> 查詢模塊系統(tǒng)管理員頁面和普通頁面部分都會出現(xiàn)。在用戶查詢頁面中查詢流程和用戶錄入頁面流程大致相同。在管理員查詢頁面中
59、,有兩個查詢方式:按用戶名和按表格模板。管理員選擇查詢方式,可對查詢結(jié)果進行預(yù)覽和審核。</p><p><b> 數(shù)據(jù)庫設(shè)計</b></p><p><b> 數(shù)據(jù)庫設(shè)計概述</b></p><p> 本系統(tǒng)并沒有采用一般的數(shù)據(jù)庫系統(tǒng)作為系統(tǒng)的數(shù)據(jù)驅(qū)動核心,而是采用XML文件作為系統(tǒng)的數(shù)據(jù)驅(qū)動核心,這樣做的原因有兩
60、點:</p><p> 關(guān)于數(shù)據(jù)輸入頁面配置的外觀信息用XML文件來存儲和表示可以利用面向?qū)ο笏枷?,把頁面信息中需要地html代碼直接在XML節(jié)點中體現(xiàn)。</p><p> 關(guān)于用戶所輸入的信息,可用一般數(shù)據(jù)庫來存儲,但考慮到后臺數(shù)據(jù)庫可以是各種類型,比如Oracle, SQL Server等, 如果用XML文件作為中間層,將會很容易在多個數(shù)據(jù)庫之間做傳輸和同步,這樣系統(tǒng)的可移植性將會
61、增強。</p><p><b> XML文件概要說明</b></p><p> 表4.2 XML文件說明</p><p> 頁面外觀配置相關(guān)的信息存儲</p><p> 關(guān)于數(shù)據(jù)輸入頁面外觀配置信息一概存入模板文件中,該模板文件的結(jié)構(gòu)為一個Html的表格,利用Html的表格的結(jié)構(gòu)來達到頁面外觀的可配置。該xml文
62、件的節(jié)點結(jié)構(gòu)如圖4.4所示:</p><p> 節(jié)點說明如表4.3:</p><p> 表4.3 模板文件節(jié)點說明</p><p> 分控件類型說明各節(jié)點:</p><p> 標(biāo)簽控件(Label):</p><p> 表4.4 Label</p><p> 文本輸入框控件(Text
63、Box):</p><p> 表4.5 TextBox</p><p> 下拉框(DropDownList):</p><p> 表4.6 DropDownList</p><p> 多選框(CheckBox):</p><p> 表4.7 CheckBox</p><p> 單選框
64、(RadioButton):</p><p> 表4.8 RadioButton</p><p> 用戶數(shù)據(jù)相關(guān)的信息存儲</p><p> 本文系統(tǒng)采用XML存儲用戶提交的數(shù)據(jù)。一般而言,這部分信息可采用Oracle、SQL Server等數(shù)據(jù)庫來存儲。但考慮到本系統(tǒng)需要跟不同的數(shù)據(jù)庫系統(tǒng)進行對接,將這部分數(shù)據(jù)的存儲也暫時使用XML文件進行保存。在數(shù)據(jù)層保留
65、了與其他數(shù)據(jù)庫的接口。系統(tǒng)一旦需要與具體高校信息化平臺整合,可以方便安全地同其他種類數(shù)據(jù)庫做信息的傳輸和同步。這類的表格在本文系統(tǒng)中有一下幾種:</p><p><b> 報表信息表:</b></p><p> 用戶提交的表格信息需要存放到數(shù)據(jù)庫中。這些信息存放在表reportData.xml中。結(jié)構(gòu)如圖4.5:</p><p> 數(shù)據(jù)文
66、件節(jié)點說明如表4.9:</p><p> 表4.9 數(shù)據(jù)文件節(jié)點說明</p><p> 這樣三層的節(jié)點,使得每次提交的信息都可以通過report id很方便地查詢得到。甚至是表中個別字段的信息,也都可以通過item id查詢,便于修改。</p><p><b> 用戶信息表</b></p><p> 用戶信息也需
67、要存儲在數(shù)據(jù)庫中。因為前面所講述的原因,本文系統(tǒng)將用戶信息存放在user.xml中,并且只是模擬高校信息化平臺中的若干用戶信息字段。今后在實際的高校信息化平臺中架設(shè)本文系統(tǒng)的時候,這些信息已經(jīng)存在于中央數(shù)據(jù)庫的人事數(shù)據(jù)庫中,無需另外建設(shè)新的數(shù)據(jù)庫。</p><p> user.xml表結(jié)構(gòu)如圖4.6所示:</p><p> 文件節(jié)點說明如表4.10:</p><p&
68、gt; 表4.10 user.xml文件節(jié)點說明</p><p><b> 角色分配表</b></p><p> 本文系統(tǒng)的表格、文件均以角色或用戶的方式分配給特定用戶,role.xml文件就是用來存放這些信息的。</p><p> xml文件結(jié)構(gòu)如圖4.7:</p><p> 文件節(jié)點說明如表4.11:<
69、;/p><p> 表4.11 role.xml文件節(jié)點說明</p><p><b> 模板關(guān)聯(lián)表</b></p><p> 一個模板文件對應(yīng)有一個數(shù)據(jù)存儲文件。repCollections.xml文件中存放了他們之間的對應(yīng)關(guān)系。Xml文件結(jié)構(gòu)如圖4.8:</p><p> 文件節(jié)點說明如表4.12:</p>
70、;<p> 表4.12 repCollections.xml文件節(jié)點說明</p><p><b> 界面設(shè)計</b></p><p><b> 系統(tǒng)界面總體設(shè)計</b></p><p> 系統(tǒng)頁面色調(diào)采用黑白藍的色系,配合一定的圖標(biāo),以簡潔大方為總體風(fēng)格。系統(tǒng)頁面由三大塊組成:登陸頁面、用戶功能頁面、
71、控件設(shè)置頁面,后面將進行分別說明。</p><p><b> 第三方組件</b></p><p> 本系統(tǒng)在界面方面用到了四個第三方組件,分別是:</p><p> obout公司的Splitter,公司主頁:www.obout.com。</p><p> obout公司的Slide Menu。</p>
72、;<p> obout公司的Easy Menu。</p><p> MetaBuilder公司的DualList,公司主頁:http://www.metabuilders.com。</p><p><b> 登陸頁面</b></p><p><b> 用戶功能界面</b></p><
73、;p><b> 控件定制頁面</b></p><p><b> 模塊實現(xiàn)</b></p><p> 本文系統(tǒng)按用戶角色可分為兩個模式:管理員模式和普通用戶模式。</p><p> 管理員模式下,用戶可以對所有報表進行字段配置,角色分配,還可以對報表進行查詢、審核甚至修改。普通用戶模式下,用戶能看到屬于自己的所
74、有報表,填寫、提交這些報表,也可以對自己已經(jīng)提交的報表進行查詢。</p><p> 因為兩種模式下的某些功能有重復(fù)的地方,所以本系統(tǒng)按照功能劃分,又可分為6個模塊:登陸模塊、分配模塊、配置模塊、錄入模塊,查詢模塊和修改模塊。本文作者在這個系統(tǒng)中,負責(zé)錄入模塊,查詢模塊和修改模塊的實現(xiàn)。下面將從這個角度詳細闡述作者是如何實現(xiàn)這3個模塊。</p><p> 三個模塊涉及的類及其類圖概述&l
75、t;/p><p> BRep類(控制層)</p><p> BRep類實際起了一個映射Template類和ReportData類的作用。BRep有兩個屬性:Name和File。在本文系統(tǒng)種,一個template實例對應(yīng)一個存放表格模板頁面信息的template.xml文件。而一個reportData實例則對應(yīng)一個存放某個具體表格模板數(shù)據(jù)信息的reportData.xml文件。這兩者的關(guān)系是
76、一一對應(yīng)的。如何把他們關(guān)聯(lián)起來呢?作者新建了一個RepCollection.xml文件,專門存儲他們之間的一一對應(yīng)關(guān)系,并用BRep類來實現(xiàn)。BRep的File屬性代表了template.xml文件名,Name屬性中存放的則是這個template.xml文件所唯一確定的reportData.xml文件名。這兩個文件名都可以讓用戶自行設(shè)置,我們要做的僅僅是把他們關(guān)聯(lián)并確定下來。</p><p> Item簡單類圖
77、(控制層)</p><p> Item類、Report類和ReportData類是本文作者實現(xiàn)錄入、查詢、修改模塊的重要的類。他們共同實現(xiàn)了用戶提交的數(shù)據(jù)如何從動態(tài)頁面中取得,并根據(jù)不同頁面的數(shù)據(jù)個數(shù),往xml文件中動態(tài)添加節(jié)點,存儲數(shù)據(jù)。也實現(xiàn)了根據(jù)用戶要求的頁面,把節(jié)點數(shù)據(jù)提取出來,再關(guān)聯(lián)到動態(tài)頁面的相應(yīng)位置。</p><p> 正是因為所有數(shù)據(jù)和頁面控件全部必須動態(tài)加載,所以頁面
78、無法按照普通的方式制作:即先在頁面中拖放控件,之后綁定數(shù)據(jù)庫字段。為了達到動態(tài)加載的目的,我們把頁面中的控件信息(包括控件類型和控件位置、控件屬性、驗證規(guī)則)存儲在”模板.xml”文件中。把控件對應(yīng)的數(shù)據(jù)信息(即用戶填寫到控件中的數(shù)據(jù))也存儲在相應(yīng)的”數(shù)據(jù).xml”文件中。Item類就是用來存儲單個控件的數(shù)據(jù)信息的。他有一個itemID屬性,唯一標(biāo)識了這個控件名。并且我們把控件名的形式規(guī)定為:</p><p>
79、 reportID_trN_tdM_cJ</p><p> 其中reportiID是該控件的數(shù)據(jù)信息所屬的reportID,trN代表控件位于表格的第N行,tdM表示控件位于表格的第M列,這就確定了控件在頁面表格中的具體單元格位置,cJ則是表示這個數(shù)據(jù)是屬于該單元格下第J個控件的。例如有一個itemID的屬性為:“teacher001_10_tr3_td2_c1”,它代表的是該控件的數(shù)據(jù)屬于reportID為“
80、teacher001_10”的數(shù)據(jù)節(jié)點,該控件在頁面中處于第3行第2列的第1個控件位置。這樣,從數(shù)據(jù)和頁面位置兩個方面來標(biāo)識這個控件。</p><p> 通過這個itemID,能立刻找到這個控件數(shù)據(jù)所對應(yīng)地控件在頁面中的具體位置,就能把數(shù)據(jù)和控件之間關(guān)聯(lián)起來,方便地進行數(shù)據(jù)存儲和提取。</p><p> Report簡單類圖(控制層)</p><p> 同It
81、em的任務(wù)相近,report類也是用來實現(xiàn)數(shù)據(jù)保存和提取的。它保存了用戶對某個模板一次提交的所有信息。即某個用戶在某個時刻對某張表格進行填寫和提交,這所有的信息的操作都由一個Report實例進行。一個Report有唯一的reportID標(biāo)識,它的結(jié)構(gòu)是:</p><p><b> userID_N</b></p><p> 其中userID是當(dāng)前登入系統(tǒng)的填表用戶
82、自己的userID,N代表所填表格被提交的次數(shù)。這樣的ID結(jié)構(gòu)保證了用戶每次提交都是產(chǎn)生一個不重復(fù)的reportID,同樣是為了根據(jù)reportID保存、修改和查詢該次的提交數(shù)據(jù)。再以本文前面提到的例子,reportID為“teacher001_10”表示這個數(shù)據(jù)是用戶id為teacher001的用戶提交的。并且他那一次提交數(shù)據(jù)之前,已經(jīng)有9人/次對該表格進行過提交。</p><p> 一個report實例中包
83、含有若干item實例,在現(xiàn)實中的意義就是:每張表格中有若干個字段。</p><p> ReportData簡單類圖(控制層)</p><p> 不言而喻,reportData類用來存儲所有用戶對某一張表格所提交的信息。用戶提交一次該表格的數(shù)據(jù)信息,reportData就往reportData.xml數(shù)據(jù)庫中添加一個report節(jié)點和若干個item子節(jié)點用于存放信息。換言之,當(dāng)用戶提交多
84、次,reportData.xml中就產(chǎn)生了多個report節(jié)點。他們之間用reportID區(qū)分。</p><p> 有了以上這3個類,動態(tài)頁面位置信息和其數(shù)據(jù)之間的關(guān)聯(lián)變成可能,動態(tài)數(shù)據(jù)存儲和提取也變得便捷起來。</p><p><b> 數(shù)據(jù)層類</b></p><p> 表4.13 數(shù)據(jù)層類與其對應(yīng)的控制層類</p>&
85、lt;p> 這些以“DL_”開頭命名的類,分別是以上幾個控制層的類所對應(yīng)的數(shù)據(jù)操作層類。他們負責(zé)與數(shù)據(jù)庫(本文系統(tǒng)中即XML文件)進行交互。類中封裝了對數(shù)據(jù)庫進行讀取、寫入、對XML文件創(chuàng)建、修改、刪除等操作的方法。這些類是本文系統(tǒng)程序中與數(shù)據(jù)庫交互的唯一接口。</p><p> TemplateBuilderei類</p><p> TemplateBuilder類是本文作者
86、實現(xiàn)3個模塊的另一個重要類。它的作用是解析配置好的表格頁面信息,動態(tài)生成一個定制好的服務(wù)器控件Table,以便在UI層中加載顯示,Table中包含該表格所需要的所有其他Web控件(類型有:TextBox、Label、CheckBoxList、DropDownList、RadioButton)。TemplateBuilder類重載了4個TableBuilder方法。作用分別是:</p><p> 根據(jù)定制的頁面信
87、息生成不含控件和數(shù)據(jù)的空白表格控件。</p><p> 生成含有子控件但不含數(shù)據(jù)的表格控件。(供用戶錄入新數(shù)據(jù)用)</p><p> 生成含有數(shù)據(jù)但不含有控件的表格控件。(供頁面預(yù)覽用)</p><p> 生成含有控件同時加載數(shù)據(jù)的表格控件。(供用戶修改數(shù)據(jù)用)</p><p> Collections 集合類的實現(xiàn)與作用</p
88、><p> 在本文系統(tǒng)開發(fā)過程中,作者將常用的業(yè)務(wù)實體抽象為特定的類,如Item、Report、User等,而這些類之間會存在著相應(yīng)的關(guān)聯(lián)或依存關(guān)系,如Item和Report通過ID關(guān)聯(lián)。應(yīng)用中,產(chǎn)生了例如這樣的需求:獲得一組Item對象(即Item集合類的實例,如ItemList),指向其中一個Item對象(如Item[i]),從而訪問這個Item對象的屬性和方法。為滿足以上集合類的需求,本文作者寫了ItemLi
89、st、ReportList、RepList、UserList等這樣的集合類。這些類繼承了CollectionBase類,利用它內(nèi)置的List和它已經(jīng)實現(xiàn)的Count、Clear等接口,加上自己顯示實現(xiàn)了Add、Remove、IndexOf、Insert等接口,提供了集合類的增加、刪除、索引等功能。解決了類關(guān)聯(lián)的問題。提高程序的性能同時也簡化了代碼。</p><p> 簡單闡述過幾個重要的類在實現(xiàn)模塊中的作用,下
90、面將講述3個模塊的實現(xiàn)過程。</p><p><b> 錄入模塊實現(xiàn)</b></p><p><b> 主要功能</b></p><p> 本模塊實現(xiàn)了動態(tài)生成、加載表格控件和其他子控件。用戶選擇要填寫的表格模板,系統(tǒng)將根據(jù)該模板存儲的頁面信息,將表格所包含的所有字段以Web控件的形式顯示在頁面上。用戶填寫并提交數(shù)據(jù)
91、。</p><p> 值得一提的是,該頁面在生成控件的同時,可以根據(jù)管理員事先的配置對指定字段進行表格預(yù)填。例如管理員配置了用戶名、用戶性別、住址等字段信息的預(yù)填。頁面在顯示給用戶的時候,這些字段已經(jīng)根據(jù)該用戶的詳細信息填寫完畢,用戶無需重復(fù)填寫。</p><p> 該模塊另一個特點是能根據(jù)配置要求,對相應(yīng)控件中用戶提交的信息進行數(shù)據(jù)的校驗。例如要求有些字段必填,則生成該控件的同時,也
92、生成了一個.net下自帶的RequiredFieldValidator驗證控件于該字段綁定,提交頁面上就會對該字段填寫的信息進行驗證。本系統(tǒng)把驗證控件設(shè)置成客戶端驗證,免去了多次與服務(wù)器交互的麻煩。同樣的,本系統(tǒng)還支持正則表達式的判定??奢斎肴我庹齽t表達式,來限制字段的輸入類型,例如數(shù)字、E-mail、郵政編碼等等。下面是錄入模塊的頁面流程圖。</p><p><b> 頁面流程圖</b>
93、</p><p><b> 順序圖</b></p><p> 由順序圖可以看出,用戶以合法身份登陸頁面,選擇所要填寫的模板,這是由Submit這個UI層的類實現(xiàn)的,它創(chuàng)建一個TemplateBuilder實例,用來獲得一個動態(tài)表格。TemplateBuilder創(chuàng)建一個Template實例,加載用戶所選擇的模板文件。TemplateBuilder根據(jù)加載的數(shù)據(jù),解
94、析,生成對應(yīng)的Table控件和其他Web子控件。如果有需要,再進行表格數(shù)據(jù)預(yù)加載。TemplateBuilder工作完成后,將一個Table服務(wù)器控件返回給Submit UI層,顯示給用戶。用戶進行填寫。提交前,頁面根據(jù)定制對用戶所填字段數(shù)據(jù)進行客戶端驗證,輸入數(shù)據(jù)不符合規(guī)范,將在頁面提示錯誤,反饋給用戶,當(dāng)所有提交數(shù)據(jù)驗證通過,UI層創(chuàng)建一個ReportData實例,用來提取頁面中用戶提交的信息,并將它存入數(shù)據(jù)庫。</p>
95、<p><b> 查詢模塊實現(xiàn)</b></p><p><b> 主要功能</b></p><p> 一個用戶往往需要填寫各種表格、文件,特殊情況下,同樣一份表格,需要用戶提交多次。當(dāng)用戶填寫的表格增多,一個方便快捷的查詢模塊對用戶進行已提交信息的查看至關(guān)重要。該模塊中,用戶首先可以瀏覽到所有提交過的表格名稱。當(dāng)用戶選擇該表格
96、,則返回該表格下該用戶所提交過的信息。用table的形式,列出了各次提交的鏈接。用戶可在此基礎(chǔ)上對表格進行瀏覽。但無法修改表格內(nèi)容。</p><p><b> 流程簡述和順序圖</b></p><p> 這個模塊的功能較為簡單。又有了錄入模塊動態(tài)加載技術(shù)為基礎(chǔ),實現(xiàn)起來比較順利。查詢模塊的頁面流程基本同錄入模塊,與錄入模塊不同的是,在UI層中,創(chuàng)建了reportD
97、ata實例,用以獲得符合查詢條件的所有report,返回一個reportList。用戶選擇reportList中某個report,則UI層生成TemplateBuilder實例,動態(tài)加載頁面樣式,并把report實例中的report數(shù)據(jù)加載到相應(yīng)頁面位置。同樣返回給UI層一個Table控件,與錄入不同的,這個控件中并沒有加載用于用戶交互的控件,而是加載了用戶提交過的數(shù)據(jù)。此時完成頁面瀏覽。</p><p> 下
98、圖是查詢模塊的順序圖:</p><p><b> 修改模塊實現(xiàn)</b></p><p> 本文系統(tǒng)支持用戶修改已提交的數(shù)據(jù)。此時系統(tǒng)不是產(chǎn)生新記錄,而是對原有記錄進行局部更新。這使得頁面不僅而要動態(tài)加載子控件,也要把原有數(shù)據(jù)相應(yīng)加載到控件上,用戶無需填寫整張空表。所以,有了上面兩個模塊的開發(fā)經(jīng)驗,很容易得出結(jié)論:修改模塊建立與錄入模塊和查詢模塊的基礎(chǔ)上,是這兩個模
99、塊的發(fā)展。其技術(shù)難點在上兩個模塊中已經(jīng)詳盡解釋。這里不再贅述。</p><p><b> 系統(tǒng)頁面功能描述</b></p><p><b> 登陸頁面</b></p><p> 圖4.20中顯示的系統(tǒng)的登陸頁面,圖中標(biāo)號1標(biāo)出的退出按鈕通過一個JavaScript可以關(guān)閉頁面。圖中標(biāo)號2是登陸框,用戶輸入用戶名、密碼
100、到文本框并點擊按鈕完成操作。如果用戶名或密碼錯誤,按鈕下會有錯誤提示。</p><p><b> 模板上傳頁面</b></p><p> 圖4.21顯示的是模板上傳頁面,標(biāo)簽2的部分是功能菜單,標(biāo)簽3部分管理員可以把本地的模板文件上傳到系統(tǒng),然后在下拉框中選擇系統(tǒng)中存在的模板文件,然后點擊預(yù)覽按鈕,在標(biāo)簽1的地方就會顯示出該模板的外觀預(yù)覽。標(biāo)簽4的地方是退出系統(tǒng)按
101、鈕。</p><p><b> 模板配置頁面</b></p><p> 圖4.22顯示的是模板配置頁面,標(biāo)簽1的部分是功能菜單,標(biāo)簽3的地方顯示的模板的外觀形狀,在不同的單元格里單擊右鍵會彈出菜單,可以向單元格中做各種配置。標(biāo)簽4是模板文件選擇的下拉框,由管理員在報表名里為配置的頁面取一個名字。</p><p><b> 查詢頁
102、面</b></p><p> 圖4.23顯示的是管理員的查詢頁面,標(biāo)簽1的部分是功能菜單,管理員可以按表名和按姓名進行查詢。在標(biāo)簽3的地方選擇完畢并按確定以后,在標(biāo)簽2的地方會顯示數(shù)據(jù)錄入的情況列表,在每一行數(shù)據(jù)后面都有瀏覽的按鈕。</p><p><b> 教師數(shù)據(jù)錄入頁面</b></p><p> 圖4.24顯示的教師錄入
103、頁面,標(biāo)簽1是功能菜單,標(biāo)簽3的地方由教師選擇自己需要錄入的報表,確定以后標(biāo)簽2的地方會顯示出該報表頁面。標(biāo)簽4的地方除了退出按鈕,會顯示當(dāng)前登陸的老師的姓名。</p><p><b> 教師查詢頁面</b></p><p> 圖4.25顯示的教師查詢頁面,標(biāo)簽3的地方會顯示該教師所擁有的報表,選擇點擊確定以后標(biāo)簽2的地方便會列出該報表由該教師提交的記錄。每行記錄
104、后面都有瀏覽、修改、刪除功能。</p><p><b> 結(jié)論</b></p><p> 本文根據(jù)各行業(yè)信息化平臺對信息發(fā)布、收集、統(tǒng)計日趨動態(tài)化、實時性、準(zhǔn)確可靠等的需求,提出了Web下可配置信息發(fā)布收集解決方案,并以高校信息化平臺為背景,設(shè)計、實現(xiàn)了一個面向高校的基于B/S構(gòu)架的可配置信息發(fā)布、收集系統(tǒng)。為解決可配置信息發(fā)布收集找到了一個研究方向。不可否認因為
105、許多因素的制約,系統(tǒng)本身仍存在著不少缺陷,但通過本次畢業(yè)設(shè)計的探索和實驗,我們已經(jīng)基本掌握該問題的解決之道,對該系統(tǒng)的發(fā)展趨勢有了一個較為全面的了解。在日后的開發(fā)中,對它進行進一步完善的同時,也將考慮如何將其擴展到其他領(lǐng)域。對該系統(tǒng)的發(fā)展前景,是充滿信心的。下面簡述了系統(tǒng)存在的不足和對未來的展望。</p><p><b> 系統(tǒng)存在的不足</b></p><p>
106、 本文系統(tǒng)初步實現(xiàn)了Web下可配置的信息發(fā)布、收集。但仍留下了不少遺憾。主要有以下幾個方面。</p><p> 尚未能實現(xiàn)完全的Web可視化配置,不能在網(wǎng)頁中可視化制作空白表格。雖然現(xiàn)有的javascript技術(shù)可以實現(xiàn)Web下動態(tài)制作表格,但這樣制作的表格難以保存和復(fù)用,并且產(chǎn)生較多多余代碼,執(zhí)行效率和安全性都不高。這個方案最終被我們拋棄。</p><p> 系統(tǒng)安全性。本文系統(tǒng)涉及
107、的是在網(wǎng)絡(luò)中傳輸信息,當(dāng)中包含了個人資料、單位資料甚至是項目機密。這樣的傳輸面臨著種種危險:黑客盜取、網(wǎng)絡(luò)不穩(wěn)定、信息被篡改等等。同時,用戶提交的信息是否得到雙方認可是一個嚴肅的問題。作為提交方,會擔(dān)心他人非法盜取自己的用戶名密碼發(fā)送信息。接受方則擔(dān)心收到的是被攔截、篡改的信息,擔(dān)心Web應(yīng)用程序漏洞,擔(dān)心網(wǎng)絡(luò)不穩(wěn)定等等問題。這在本文系統(tǒng)中尚未采取有效的解決辦法。</p><p> 從性能上考慮本系統(tǒng)也存在著不
108、足,在錄入頁面的生成上,是運行時讀取配置文件動態(tài)加載服務(wù)器控件,這樣的處理方式明顯沒有直接讀取ASPX文件性能更好。處理的方式是在管理員配置頁面的時候動態(tài)生成ASPX頁面和CS文件,教師在讀取錄入頁面的時候,直接讀取ASPX頁面而不需要讀取配置文件再加載服務(wù)器控件。</p><p><b> 展望</b></p><p> 針對上一節(jié)提出的系統(tǒng)不足,我們對系統(tǒng)的下
109、一步開發(fā),有了比較清晰的思路。</p><p> 在可視化建表方面,Scientific Technologies Corporation[2]公司開發(fā)了一個基于Web的動態(tài)建表工具:Form Builder。這個工具可以幫助用戶應(yīng)用標(biāo)準(zhǔn)的公共衛(wèi)生專業(yè)詞匯創(chuàng)建收集資料所需的表格,雖然他的開發(fā)背景是以醫(yī)療和疾病防治領(lǐng)域,但是動態(tài)表格技術(shù)卻是現(xiàn)實可行的。下一步,本文系統(tǒng)應(yīng)當(dāng)實現(xiàn)這一技術(shù),進一步增強系統(tǒng)自身可配置、按
110、需動態(tài)創(chuàng)建的優(yōu)勢。</p><p> 在系統(tǒng)安全性方面,可以參照電子商務(wù)系統(tǒng)安全解決方案[3],采取一下措施:</p><p> 信息加密。即網(wǎng)絡(luò)信息的保密性(Confidentiality)。自古以來,通信中的安全保密問題一直受到人們的廣泛關(guān)注。</p><p> 身份認證(CA: Certificate Authorization)。在互聯(lián)網(wǎng)上,要使交易成
111、功,必須可靠的確認雙方身份。另外還有訪問控制的問題,常指對共享資源的存取控制,即禁止未授權(quán)的用戶訪問有關(guān)資源。CA認證在高校信息化平臺中也是至關(guān)重要的一部分。本文系統(tǒng)既然以高校信息化平臺為背景出發(fā)點,就必然要考慮在系統(tǒng)中加入身份認證系統(tǒng)。</p><p> 可靠性/不可否認性。提交的信息不能因為環(huán)境的變化而隨意被否認的,否則必然會損害信息傳輸中一方的利益。信息傳輸過程的各個環(huán)節(jié)都必須是不可否認的。</p&
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于web的可配置信息發(fā)布收集系統(tǒng)-畢業(yè)論文
- 基于web的可配置信息發(fā)布收集系統(tǒng)-畢業(yè)論文
- web下的可配置信息發(fā)布收集系統(tǒng)-畢業(yè)論文
- 畢業(yè)論文——基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 畢業(yè)論文——基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 基于web的校園新聞發(fā)布系統(tǒng)畢業(yè)論文
- cdma網(wǎng)元配置信息管理系統(tǒng)---畢業(yè)論文
- 畢業(yè)論文——基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 畢業(yè)論文(設(shè)計)-基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 畢業(yè)論文(設(shè)計)基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 畢業(yè)論文(設(shè)計)基于web的校園新聞發(fā)布系統(tǒng)
- 基于web新聞發(fā)布系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文
- 基于web的校園新聞發(fā)布系統(tǒng)畢業(yè)論文開題報告
- 計算機畢業(yè)論文---基于web的個人網(wǎng)站新聞發(fā)布系統(tǒng)
- 畢業(yè)論文---基于web技術(shù)的外匯牌價自動發(fā)布系統(tǒng)設(shè)計
- 畢業(yè)設(shè)計基于web的信息發(fā)布系統(tǒng)設(shè)計
- 畢業(yè)論文基于web的信息檢索系統(tǒng)的研究
- 基于web的圖片信息管理系統(tǒng)設(shè)計【畢業(yè)論文】
- 畢業(yè)論文---基于java新聞發(fā)布系統(tǒng)
- 基于web的學(xué)校新聞發(fā)布系統(tǒng)—畢業(yè)設(shè)計論文
評論
0/150
提交評論