2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  教育報表管理系統(tǒng)—權(quán)限管理模塊的實現(xiàn)</p><p><b>  摘 要</b></p><p>  隨著教育改革的不斷深化,建立一套能夠適應(yīng)這些改變的教育報表管理 系統(tǒng)也就顯得尤為重要。教育報表管理系統(tǒng)是根據(jù)某教育局的實際需求進行設(shè)計開發(fā)的,該報表系統(tǒng)主要記錄了教育局其管轄范圍內(nèi)所有教學(xué)單位內(nèi)教育情況的數(shù)據(jù),并可進行匯總。</p>

2、<p>  本論文設(shè)計采用B/S模式,利用VS2005(c#)、Dreamwear8.0、 MSSQL2000數(shù)據(jù)庫等開發(fā)技術(shù),設(shè)計與開發(fā)了包括報表四級權(quán)限管理模塊、報表WEB錄入頁面等功能模塊。通過本論文設(shè)計開發(fā)的功能模塊,滿足了報表系統(tǒng)中用戶分級查詢各自報表數(shù)據(jù)、并且相互不影響的功能需求,實現(xiàn)了報表WEB錄入頁面簡潔直觀、報表數(shù)據(jù)上傳方便快捷,同時確保了報表數(shù)據(jù)的保密性和安全性。</p><p>

3、;  關(guān)鍵詞: VS2005(c#);報表管理;權(quán)限管理</p><p>  Management System for Education Report Forms</p><p>  —The Implementation of Privilege Management Module</p><p><b>  Abstract</b>&l

4、t;/p><p>  Along with the continuous development of educational reformation, it seems particularly important to establish a education management system which can adapt to the set of changes of these statements.

5、 The Educational forms management system is based on a Department of Educational office which is demand for the actual design of the development.</p><p>  This system was designed with B / S mode which was u

6、sed VS2005 (c #), Dreamwear8.0. MSSQL2000 database technology to design an Educational forms. It was included statements of four power management module and statements such as Web pages input module. In this paper, throu

7、gh the designed function modules, users can inquire about their own statements independently; it realized the functional requirements and achieved the statements Web pages concise visual input. On the other side, it is f

8、ast and </p><p>  Key words: VS2005(c#); report forms management; privilege management</p><p><b>  目 錄</b></p><p><b>  論文總頁數(shù):22頁</b></p><p>

9、<b>  1引言1</b></p><p><b>  2 選題背景1</b></p><p><b>  2.1課題起源1</b></p><p><b>  2.2課題目的1</b></p><p><b>  2.3課題意義1&

10、lt;/b></p><p><b>  3相關(guān)技術(shù)介紹2</b></p><p><b>  3.1系統(tǒng)架構(gòu)2</b></p><p>  3.2數(shù)據(jù)傳輸方案2</p><p>  3.3系統(tǒng)實現(xiàn)環(huán)境和技術(shù)3</p><p><b>  4需求分析

11、4</b></p><p><b>  4.1功能需求4</b></p><p>  4.2應(yīng)解決的問題5</p><p>  5數(shù)據(jù)庫設(shè)計(權(quán)限管理部分)6</p><p>  5.1數(shù)據(jù)庫總表6</p><p>  5.2數(shù)據(jù)庫關(guān)系圖8</p><p&

12、gt;<b>  6 建模10</b></p><p>  6.1 模塊設(shè)計(權(quán)限管理部分)10</p><p><b>  6.2部署圖12</b></p><p><b>  7 系統(tǒng)實現(xiàn)12</b></p><p>  7.1配置信息管理12</p>

13、<p>  7.2報表的制作13</p><p>  7.3頁面的制作13</p><p>  7.4用戶登陸功能14</p><p>  7.5四級權(quán)限與用戶添加16</p><p>  7.6報表權(quán)限控制18</p><p><b>  8 測試19</b></

14、p><p><b>  結(jié) 論19</b></p><p><b>  參考文獻20</b></p><p><b>  致 謝21</b></p><p><b>  聲 明22</b></p><p>&l

15、t;b>  1引言</b></p><p>  報表管理是現(xiàn)在全國各教育局的一個繁瑣問題,我國人口眾多,地域?qū)拸V,人口流動性大,為教育部門的管理帶來了極大的不便。傳統(tǒng)的管理方式,費時費力、易出錯、效率低、合理性差。報表管理系統(tǒng)若沒有周詳?shù)目紤],很容易引起報表的混亂,不易管理和查看。隨著無紙化辦公的逐漸實現(xiàn),信息的自動處理以及網(wǎng)絡(luò)式的信息交互方式越來越被人們認(rèn)可和應(yīng)用。讓計算機來管理報表數(shù)據(jù)是各個

16、行業(yè)都在使用的手段,報表管理系統(tǒng)正是在這種情況下產(chǎn)生的。</p><p>  報表管理系統(tǒng)考慮到教育局的報表多,數(shù)據(jù)復(fù)雜,使用的用戶多,以及用戶對系統(tǒng)的操作權(quán)限不同等眾多問題,要求設(shè)計開發(fā)一套完整的報表管理系統(tǒng),以適應(yīng)不同用戶的需要。通過我們對教育局現(xiàn)狀的分析,對報表數(shù)據(jù)以及用戶權(quán)限等問題的綜合考慮,制定出了一套完整的報表方案,完成了報表系統(tǒng)的開發(fā)。該系統(tǒng)的完成可以節(jié)省更多的人力、物力以及財力,更提高了工作效率以

17、及準(zhǔn)確性和安全性。打開報表網(wǎng)站,輸入用戶名和密碼,就可以根據(jù)用戶權(quán)限輕松地完成各種操作,添加報表,刪除報表,報表數(shù)據(jù)錄入與刪除,查看操作記錄,及時修正錯誤數(shù)據(jù)等等。由于增加了用戶權(quán)限管理功能,大大提高了數(shù)據(jù)的保密性。</p><p><b>  2 選題背景</b></p><p><b>  2.1課題起源</b></p><

18、;p>  隨著我國國力的與日俱增,對教育的重視程度較之以前有了很大的提高。教育制度的不斷完善,學(xué)校的新建,學(xué)生人數(shù)逐年增加,教育普及程度的提高,日常各教育局部門的工作也就越來越繁重,特別是我國地廣人多這一特點,更加加重了教育局的負(fù)擔(dān)。這一點在報表的管理與統(tǒng)計這塊顯得尤為突出。根據(jù)調(diào)查發(fā)現(xiàn),目前各教育局在所管轄的范圍內(nèi),統(tǒng)計所有報表數(shù)據(jù)需要花費3-4個月的時間,而且傳統(tǒng)的手工操作,即費時又費力,而且容易出錯,工作效率較低,并且不能保

19、證正確性。因此,擁有一套實用、高效、完善的報表管理軟件就顯得尤為重要了,它可以提升教育部門的教育管理質(zhì)量,提高工作效率,降低行政成本。</p><p><b>  2.2課題目的</b></p><p>  設(shè)計一套符合云南省某教育局的實際情況、完整統(tǒng)一、技術(shù)先進、高效穩(wěn)定、安全可靠的基于B/S架構(gòu)的報表管理系統(tǒng)。</p><p><b&

20、gt;  2.3課題意義</b></p><p>  本課題是根據(jù)云南省某教育局的實際情況制定出完整方案并開發(fā)完成的。該教育局共有70多種類型的表格需要處理,并且對報表的操作分為四種權(quán)限(市、縣、鄉(xiāng)鎮(zhèn)、學(xué)校),傳統(tǒng)的手工管理方式操作復(fù)雜,錯誤率高并且保密性較差。本系統(tǒng)的完成,可以提高該教育局的工作效率以及準(zhǔn)確性和安全性。</p><p><b>  3相關(guān)技術(shù)介紹&l

21、t;/b></p><p><b>  3.1系統(tǒng)架構(gòu)</b></p><p>  系統(tǒng)在選用結(jié)構(gòu)的時候,采用了B/S模式開發(fā)方案。它有如下優(yōu)缺點:</p><p><b>  B/S架構(gòu)</b></p><p> ?。?)維護和升級方式簡單</p><p>  目前,

22、軟件系統(tǒng)的改進和升級越來越頻繁,B/S架構(gòu)的產(chǎn)品明顯體現(xiàn)著更為方便的特性。對一個稍微大一點單位來說,系統(tǒng)管理人員如果需要在幾百甚至上千部電腦之間來回奔跑,效率和工作量是可想而知的,但B/S架構(gòu)的軟件只需要管理服務(wù)器就行了,所有的客戶端只是瀏覽器,根本不需要做任何的維護。無論用戶的規(guī)模有多大,有多少分支機構(gòu)都不會增加任何維護升級的工作量,所有的操作只需要針對服務(wù)器進行;如果是異地,只需要把服務(wù)器連接專網(wǎng)即可,實現(xiàn)遠程維護、升級和共享。所以

23、客戶機越來越“瘦”,而服務(wù)器越來越“胖”是將來信息化發(fā)展的主流方向。今后,軟件升級和維護會越來越容易,而使用起來會越來越簡單,這對用戶人力、物力、時間、費用的節(jié)省是顯而易見的,驚人的。因此,維護和升級革命的方式是“瘦”客戶機,“胖”服務(wù)器。</p><p> ?。?)成本降低,選擇更多</p><p>  大家都知道windows在桌面電腦上幾乎一統(tǒng)天下,瀏覽器成為了標(biāo)準(zhǔn)配置,但在服務(wù)器操

24、作系統(tǒng)上windows并不是處于絕對的統(tǒng)治地位?,F(xiàn)在的趨勢是凡使用B/S架構(gòu)的應(yīng)用管理軟件,只需安裝在Linux服務(wù)器上即可,而且安全性高。所以服務(wù)器操作系統(tǒng)的選擇是很多的,不管選用那種操作系統(tǒng)都可以讓大部分人使用windows作為桌面操作系統(tǒng)電腦不受影響,這就使的最流行免費的Linux操作系統(tǒng)快速發(fā)展起來,Linux除了操作系統(tǒng)是免費的以外,連數(shù)據(jù)庫也是免費的,這種選擇非常盛行。</p><p> ?。?)應(yīng)用

25、服務(wù)器運行數(shù)據(jù)負(fù)荷較重</p><p>  由于B/S架構(gòu)管理軟件只安裝在服務(wù)器端(Server)上,網(wǎng)絡(luò)管理人員只需要管理服務(wù)器就行了,用戶界面主要事務(wù)邏輯在服務(wù)器(Server)端完全通過WWW瀏覽器實現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實現(xiàn),所有的客戶端只有瀏覽器,網(wǎng)絡(luò)管理人員只需要做硬件維護。但是,應(yīng)用服務(wù)器運行數(shù)據(jù)負(fù)荷較重,一旦發(fā)生服務(wù)器“崩潰”等問題,后果不堪設(shè)想。因此,許多單位都備有數(shù)據(jù)庫存

26、儲服務(wù)器,以防萬一。</p><p><b>  3.2數(shù)據(jù)傳輸方案</b></p><p>  Web Service</p><p>  Web Service是一個應(yīng)用組件,它邏輯性地為其他應(yīng)用程序提供數(shù)據(jù)與服務(wù)。各應(yīng)用程序通過網(wǎng)絡(luò)協(xié)議和規(guī)定的一些標(biāo)準(zhǔn)數(shù)據(jù)格式(HTTP、XML、SOAP)來訪問Web Service,通過Web Serv

27、ice內(nèi)部執(zhí)行得到所需結(jié)果。Web Service結(jié)合了基于組件開發(fā)各個方面的特點、網(wǎng)絡(luò)技術(shù)和.NET程序模型的基礎(chǔ)。 </p><p>  Web Service是一種構(gòu)建應(yīng)用程序的普遍模型,它可以在任何支持網(wǎng)絡(luò)通信的操作系統(tǒng)中實施運行。Web Service可以接受和生成Message(消息),Message的形式嚴(yán)格定義了Web Service接口。只要用戶能生成和使用Web Service接口所規(guī)定的Me

28、ssage,便可以在任何平臺上通過程序化語言來執(zhí)行Web Service。 </p><p>  Web Service在易操作、跨平臺等方面具有一定有時,但最大的優(yōu)勢是在于它的SOAP協(xié)議是基于XML標(biāo)準(zhǔn)的,因此它可以穿透企業(yè)防火墻,這對于開發(fā)基于Internet的企業(yè)應(yīng)用有相當(dāng)?shù)膬?yōu)勢。它的結(jié)構(gòu)如下圖所示:</p><p>  圖1 Web Service結(jié)構(gòu)圖</p>&

29、lt;p>  3.3系統(tǒng)實現(xiàn)環(huán)境和技術(shù)</p><p>  本系統(tǒng)在.Net Framework 2.0下實現(xiàn),采用SQL Server 2000作為數(shù)據(jù)提供者。系統(tǒng)開發(fā)中使用的集成開發(fā)環(huán)境是和.Net Framework 2.0配套的Visual Studio 2005,使用的語言是C#2.0,它們均推出時間不久。</p><p>  Visual Studio 2005介紹<

30、;/p><p>  Visual Studio 2005 是一系列高效的、智能的開發(fā)工具的統(tǒng)稱,它擁有一個龐大的產(chǎn)品線,包括面向?qū)W生、愛好者、初學(xué)者的Express版,面向?qū)<?、Visual Basic 6的Standard版,面向顧問、企業(yè)開發(fā)人員的Professional版和面向架構(gòu)師的Team System版本。在這些版本中,有些集成了開發(fā)軟件常用到的東西,比如重構(gòu)、單元測試、類設(shè)計器等等,以方便開發(fā)人員快速的

31、設(shè)計各類軟件。</p><p>  SQL Server 2000介紹</p><p>  SQL Server 2000 是一個全面的數(shù)據(jù)庫平臺,使用集成的商業(yè)智能工具提供了企業(yè)級的數(shù)據(jù)管理。SQL Server 2000 提供了顯著增強的網(wǎng)絡(luò)功能來構(gòu)建數(shù)據(jù)庫解決方案。利用這些網(wǎng)絡(luò)特性,用戶可以將企業(yè)數(shù)據(jù)以安全、快捷、高效的方式,通過Web頁發(fā)布給企業(yè)內(nèi)部相關(guān)部門或發(fā)布給客戶群體。SQL

32、 Server 2000 具有完備的Web 功能,企業(yè)既可以將數(shù)據(jù)存儲在Web 頁面上 或XML 文檔內(nèi),也可將其存儲在數(shù)據(jù)庫中,完全適合構(gòu)建B2B(商業(yè)到商)業(yè)或 B2C(商業(yè)到客戶)模式的電子商務(wù),并且通過支持具有多層體系結(jié)構(gòu)的客戶/服務(wù)器模式為Web 應(yīng)用提供高度的可擴展性和高可靠性。SQL Server 2000 與 Windows DNA 2000平臺一起“融洽”地工作,從而使各種規(guī)模的企業(yè)或組織能夠Web上方便地與客戶和供應(yīng)

33、商進行商業(yè)貿(mào)易并可以把老式系統(tǒng)集成到下一代的商業(yè)解決方案中去。除此之外,SQL Server 2000 可以協(xié)助公司更好地理解客戶或供應(yīng)商在Web 站點上的行為,并快速發(fā)現(xiàn)由數(shù)字經(jīng)濟所提供的新的商業(yè)機會。SQL Server 2000還有其它重要的地方,例如豐</p><p><b>  C#介紹</b></p><p>  C#是一種簡單的、現(xiàn)代的、面向?qū)ο蟮?、類?/p>

34、安全的、版本控制的、兼容的、靈活的、基于組件開發(fā)的編程語言,它是作為Visual Studio中的一部分推出。C#既保持了C++中熟悉的語法,還包含了大量的高效代碼和面向?qū)ο筇匦?,它簡化和革新了C++中的類、名字空間、方法重載和異常處理等領(lǐng)域,摒棄了C++的復(fù)雜性,更易用,更少出錯。它不僅能應(yīng)用于WEB服務(wù)程序的開發(fā),并且還能開發(fā)強大的系統(tǒng)級程序。</p><p>  C#提供了方便的功能,如垃圾收集、類型安全、

35、版本控制等等。僅有的"代價"就是,代碼操作默認(rèn)是類型安全的,不允許指針。光是類型安全就可以搞定了。但是,如果我們需要指針,仍可以通過非安全碼使用它們,而且當(dāng)調(diào)用非安全碼時,不能含有列集。</p><p><b>  4需求分析</b></p><p><b>  4.1功能需求</b></p><p>

36、<b>  報表需求</b></p><p>  報表需求:根據(jù)云南市教育局提供的報表數(shù)據(jù)顯示,共有70多張報表,同時在制作這些報表時,對報表的排版有嚴(yán)格的要求,需考慮報表的查看與打印時的格式,列舉部分報表名稱如下列表:</p><p>  表1 教師管理涉及數(shù)據(jù)列表</p><p><b>  用戶權(quán)限需求</b><

37、;/p><p>  根據(jù)用戶的需求,系統(tǒng)要提供一定的報表安全性,所以本系統(tǒng)將登陸頁面放在了首頁。根據(jù)需求,該系統(tǒng)分為四級權(quán)限,分別是:市級權(quán)限,縣級權(quán)限,鄉(xiāng)鎮(zhèn)級權(quán)限,學(xué)校級權(quán)限,每級權(quán)限可管理所管轄范圍內(nèi)的所有報表數(shù)據(jù),如市級權(quán)限可管理市下的所有縣,鄉(xiāng)鎮(zhèn),學(xué)校的報表,縣級權(quán)限可管理縣及一下單位的報表數(shù)據(jù)。每級權(quán)限可添加和刪除所管轄范圍內(nèi)的用戶,如市級權(quán)限可添加和刪除市下的所有縣,鄉(xiāng)鎮(zhèn)和學(xué)校的用戶,縣級權(quán)限可添加或刪除

38、縣下面所有鄉(xiāng)鎮(zhèn)、學(xué)校的報表數(shù)據(jù)。</p><p><b>  4.2應(yīng)解決的問題</b></p><p>  (1)權(quán)限部分的數(shù)據(jù)庫設(shè)計和建立。</p><p>  涉及到地區(qū)的綁定問題,輸入市時只出現(xiàn)其管轄內(nèi)的縣名、鄉(xiāng)鎮(zhèn)名、學(xué)校名,輸入縣名時,也只能出現(xiàn)其管轄內(nèi)的鄉(xiāng)鎮(zhèn)名等。</p><p>  (2)用戶管理模塊的設(shè)計

39、</p><p>  涉及用戶的密碼修改問題。</p><p><b>  (3)報表的制作</b></p><p>  根據(jù)云南某教育局提供的報表模板進行制作,并顯示到管理系統(tǒng)中。報表的外觀要與實際報表外觀相符合。</p><p>  (4)四級權(quán)限的設(shè)計</p><p>  權(quán)限設(shè)計主要考慮四

40、個權(quán)限的管理問題。權(quán)限是一個倒數(shù)狀問題,不能越級使用權(quán)限,并且只有市級用戶擁有添加用戶的權(quán)力。</p><p><b>  (5)界面設(shè)計</b></p><p>  界面設(shè)計需要使用專業(yè)的圖片處理軟件和專業(yè)的網(wǎng)頁制作軟件。整個網(wǎng)頁的風(fēng)格要求清新大方,簡潔明了。</p><p>  5數(shù)據(jù)庫設(shè)計(權(quán)限管理部分)</p><p

41、><b>  5.1數(shù)據(jù)庫總表</b></p><p>  在開發(fā)工程中,數(shù)據(jù)庫的個別地方在設(shè)計上存在著一些缺陷,使得軟件在開發(fā)過程中遇到了一些本可以避免的問題,因此新版本的數(shù)據(jù)庫在設(shè)計上進行了適當(dāng)?shù)膬?yōu)化。</p><p>  下圖是系統(tǒng)中所使用到的所有表,一共有75張(包括69張報表)。</p><p>  圖2 系統(tǒng)中使用到的所有表圖

42、</p><p>  下邊就每個表分被給出說明。</p><p> ?、?sysCity表 -存儲市級城市名。</p><p><b>  圖3 市級權(quán)限表圖</b></p><p>  CityID:記錄ID(種子);</p><p>  CityName: 市級城市名;</p>

43、<p> ?、?sysCounty表 - 存儲縣級信息</p><p><b>  圖4 縣級權(quán)限表圖</b></p><p>  CountyID:記錄ID(種子);</p><p>  CountyName:縣級名稱;</p><p>  CityID:市級ID外鍵;</p><p>

44、; ?、?sysTown表 - 存儲鄉(xiāng)鎮(zhèn)級信息</p><p>  圖5 鄉(xiāng)鎮(zhèn)級權(quán)限表圖</p><p>  TownID:記錄ID(種子);</p><p>  CountyID:縣級ID外鍵;</p><p>  TownName:鄉(xiāng)鎮(zhèn)名稱;</p><p>  CityID:市級ID外鍵;</p>

45、<p> ?、?sysSchool表 - 存儲學(xué)校級信息</p><p><b>  圖6學(xué)校級權(quán)限表圖</b></p><p>  SchoolID:記錄ID(種子);</p><p>  CountyID:縣級ID外鍵;</p><p>  TownID :鄉(xiāng)鎮(zhèn)ID外鍵;</p><p&

46、gt;  CityID:市級ID外鍵;</p><p>  SchoolName:學(xué)校名稱;</p><p>  ⑸ syslog表 - 存儲操作記錄相關(guān)數(shù)據(jù)</p><p><b>  圖7 用戶表圖</b></p><p>  userid:記錄ID(種子);</p><p>  Userna

47、me:用戶姓名;</p><p>  userPwd:用戶密碼;</p><p>  CountyID:用戶所屬的縣級ID外鍵;</p><p>  TownID:用戶所屬的鄉(xiāng)鎮(zhèn)級ID外鍵;</p><p>  CityID:用戶所屬的市級ID外鍵;</p><p>  SchoolID:用戶所屬的學(xué)校級ID外鍵;&l

48、t;/p><p>  UserPower:用戶的權(quán)限標(biāo)識符;</p><p> ?、?數(shù)據(jù)表 - 存儲報表數(shù)據(jù)</p><p><b>  圖8報表數(shù)據(jù)表圖</b></p><p>  DataID:記錄ID(種子);</p><p>  Datadate:記錄報表數(shù)據(jù)的時間;</p>

49、<p>  Userid:報表的所屬的用戶ID;</p><p>  CityID:報表所屬的市級ID外鍵;</p><p>  CountyID:報表所屬的縣級ID外鍵;</p><p>  TownID:報表所屬的鄉(xiāng)鎮(zhèn)級ID外鍵;</p><p>  SchoolID:報表所屬的學(xué)校級ID外鍵;</p><p

50、>  A1-。。。記錄報表的數(shù)據(jù);</p><p><b>  5.2數(shù)據(jù)庫關(guān)系圖</b></p><p><b>  四級權(quán)限關(guān)系</b></p><p>  數(shù)據(jù)庫里sysCity(市級權(quán)限表),sysCounty(縣級權(quán)限表),sysTown(鄉(xiāng)鎮(zhèn)級權(quán)限表),sysSchool(學(xué)校級權(quán)限表)這四張表描述了四級

51、權(quán)限的關(guān)系,從市級權(quán)限到學(xué)校級權(quán)限,每張表的主鍵都作為下一級權(quán)限的外鍵,建立一對多的關(guān)系,在查詢方式上,根據(jù)四張權(quán)限表的關(guān)系,建立內(nèi)聯(lián)查詢,將大大提高了數(shù)據(jù)庫的性能。在每張報表數(shù)據(jù)里都建立了與用戶一一對應(yīng)的四張權(quán)限表的主鍵ID,這樣每張報表都有了報表所屬地的權(quán)限,對不同權(quán)限用戶都可控制所對應(yīng)所屬地的報表為了方便軟件開發(fā)。四張權(quán)限關(guān)系表圖如下:</p><p><b>  圖9四級權(quán)限關(guān)系圖</b&

52、gt;</p><p><b>  數(shù)據(jù)庫關(guān)系</b></p><p>  數(shù)據(jù)庫總體結(jié)構(gòu)由sysUser(用戶表),syslog(操作記錄日志表),sysCity(市級權(quán)限表),sysCounty(縣級權(quán)限表),sysTown(鄉(xiāng)鎮(zhèn)級表),sysSchool(學(xué)校權(quán)限表),xiaoxue12(報表數(shù)據(jù)表)…等表構(gòu)成。這些表都是用sysUser表關(guān)聯(lián)的,在用戶權(quán)限里,

53、sysCity,sysCounty,sysTown,sysSchool的主鍵都將寫入susUser表的作外鍵,在syslog表里,userid作外鍵與sysUser表關(guān)聯(lián);在xiaoxue12等報表數(shù)據(jù)表里,sysUser表里的cityid,countyid,townid,schoolid都將寫入xiaoxue12等數(shù)據(jù)表里與sysUser表關(guān)聯(lián)。關(guān)系圖如下:</p><p>  圖10 數(shù)據(jù)庫關(guān)系圖</p

54、><p><b>  6 建模</b></p><p>  6.1 模塊設(shè)計(權(quán)限管理部分)</p><p>  各子模塊的重要功能如下:</p><p><b>  模塊一:密碼模塊</b></p><p>  該模塊主要完成密碼的修改部分。用戶登陸后,如果需要修改密碼,則進入

55、該頁面。需要輸入三次密碼,原密碼,新密碼和新密碼確認(rèn)。輸入完成后可選擇確定修改密碼,也可取消此次操作。如果原密碼錯誤或新密碼確認(rèn)出錯,則此次修改密碼失敗。密碼可以修改多次,但是用戶名必須由市級用戶確定,一旦用戶名確定,其權(quán)限也被確定,用戶自己不得修改。</p><p>  密碼模塊流程圖如下:</p><p>  圖11 密碼模塊流程圖</p><p>  模塊二:

56、權(quán)限管理部分</p><p>  權(quán)限管理部分主要實現(xiàn)四級權(quán)限和用戶權(quán)限的管理。分為市、縣、鄉(xiāng)鎮(zhèn)、學(xué)校四個管理級別。市級用戶登陸后,系統(tǒng)會識別出用戶名以及其權(quán)限。市級用戶可以完成市及其下屬單位的添加和刪除,比如縣名,鄉(xiāng)鎮(zhèn)名等。市級用戶還可以添加和刪除用戶,在添加用戶時,需給出用戶的密碼以及用戶擁有的權(quán)限,比如市級用戶,縣級用戶等。市級用戶可查看修改整個市及下屬單位的報表數(shù)據(jù),縣級用戶只能查看縣及下屬單位數(shù)據(jù),以次

57、類推。整個四級權(quán)限采用了數(shù)據(jù)庫綁定,實現(xiàn)地區(qū)綁定。綁定由市級用戶完成。</p><p>  權(quán)限管理流程圖如下:</p><p>  圖12權(quán)限管理流程圖</p><p><b>  6.2部署圖</b></p><p><b>  圖13系統(tǒng)部署圖</b></p><p>

58、<b>  部署圖說明:</b></p><p> ?、?服務(wù)器:.NET Framework 2.0和IIS服務(wù);</p><p>  ⑵ 數(shù)據(jù)庫服務(wù)器:需安裝有SQL Server 2000。 </p><p><b>  7 系統(tǒng)實現(xiàn)</b></p><p><b>  7.1配置信

59、息管理</b></p><p><b>  服務(wù)器端的配置:</b></p><p>  Windows2000/2003 Sever</p><p>  Microsoft .NET Framework2.0以上</p><p><b>  IIS6.0以上</b></p>

60、<p>  MSSQL2000以上</p><p><b>  數(shù)據(jù)庫連接設(shè)置</b></p><p>  以文本方式打開Web.Config,設(shè)置連接數(shù)據(jù)庫服務(wù)器的用戶名、密碼以及服務(wù)器的機器名。下圖中以高亮形式顯示為需要設(shè)置的地方。</p><p>  Uid=“連接數(shù)據(jù)庫服務(wù)器的用戶名”;</p><p&

61、gt;  Pwd=“連接數(shù)據(jù)庫服務(wù)器的密碼”;</p><p>  Database=“數(shù)據(jù)庫名稱”;</p><p>  Server=“數(shù)據(jù)庫服務(wù)器的主機名”。</p><p>  請按照實際的情況來設(shè)置。</p><p>  圖14 數(shù)據(jù)庫連接圖</p><p><b>  7.2報表的制作</b

62、></p><p>  報表的制作采用Dreamweaver 8 專業(yè)網(wǎng)頁制作工具制作,不僅方便,而且效率相當(dāng)高。制作過程非常簡單,使用Dreamweaver自帶的表格工具進行制作。這里就不詳細敘述了。報表是根據(jù)教育局原有報表進行排版和設(shè)計的。在制作中需要注意網(wǎng)頁顯示以及打印出的效果是否與教育局的實體表格一致,往往需要經(jīng)過反復(fù)修改才能達到實體的效果。報表制作圖見圖15</p><p>

63、;<b>  7.3頁面的制作</b></p><p>  頁面的制作我使用的是Photoshop cs 9.0和Dreamweaver 8這兩種軟件。Photoshop cs 9.0是專門用來進行圖像處理的軟件。通過它可以對圖像修飾、對圖形進行編輯,以及對圖像的色彩處理,另外,還有繪圖和輸出功能等。Dreamweaver主要用來制作網(wǎng)頁文件。網(wǎng)頁素材主要是平時積累所得。先選擇比較理想的素材

64、,或者是通過制圖軟件繪制的圖片,通過Photoshop圖片處理器做一些必要的修改,添加文字和效果,再使用Dreamweaver軟件將制作好的網(wǎng)站圖片鑲嵌到網(wǎng)頁中去。其具體過程我就不詳細敘述了。</p><p><b>  圖15 報表制作圖</b></p><p><b>  7.4用戶登陸功能</b></p><p> 

65、 在用戶登陸后,系統(tǒng)自動識別用戶權(quán)限,登陸界面設(shè)計如下:</p><p>  圖16系統(tǒng)登陸界面 </p><p>  用戶登陸后系統(tǒng)自動識別用戶的權(quán)限,并把用戶權(quán)限和用戶名用Session方法在服務(wù)器保存,密碼在數(shù)據(jù)庫里采用MD5加密保存,用戶登陸成功后,用戶名將在客服端用Cookie方式保存,這樣避免了用戶在登陸系統(tǒng)時重復(fù)輸入用戶名和密碼,在其他頁面初始化時,將判斷客服端的保存的Coo

66、kie值,如果值為空將返回登陸界面。 </p><p><b>  主要代碼如下:</b></p><p>  string pwd;</p><p>  pwd = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(Password.Text,

67、 "MD5"); //密碼用MD5加密</p><p>  drLogin = new scReader("select userid,countyid,townid,schoolid,userpower from sysuser where username='" + UserName.Text + "' and userpwd='&q

68、uot; + pwd + "'");//查詢用戶名和密碼是否存在</p><p>  if (Password.Text != "" && UserName.Text != "" && drLogin.Read())//如果用戶名,密碼都正確</p><p><b>  {<

69、/b></p><p>  //寫入Cookies</p><p>  HttpCookie MyCookie = new HttpCookie("UserName"); //新建Cookie</p><p>  MyCookie.Value = UserName.Text; //保存UserN

70、ame為Cookie</p><p>  DateTime dt = DateTime.Now; //得到系統(tǒng)時間</p><p>  TimeSpan ts = new TimeSpan(30, 0, 0, 0); //設(shè)置cookie的過期時間為當(dāng)前時間后的10000分鐘</p><p>  MyCookie.Exp

71、ires = dt.Add(ts); //添加Cookie的過期時間</p><p>  Response.Cookies.Add(MyCookie); //保存Cookie的設(shè)置</p><p>  Response.Redirect("Manage.aspx", true); //轉(zhuǎn)

72、向管理頁面</p><p><b>  } </b></p><p>  Else //用戶名和名判斷失敗</p><p><b>  {</b></p><p>  Response.Write("<script language='javascript'>

73、alert('用戶名或密碼錯誤,請重新輸入!');</script>"); //提示</p><p>  UserName.Text = "";</p><p>  Password.Text = "";</p><p><b>  }</b></p>

74、<p>  drLogin.Close(); //數(shù)據(jù)庫對象關(guān)閉</p><p><b>  }</b></p><p>  7.5四級權(quán)限與用戶添加</p><p>  圖17權(quán)限管理與用戶模塊界面</p><p>  四級權(quán)限管理與用戶的添加根據(jù)管理員完成,對應(yīng)執(zhí)行相應(yīng)的代碼</p>&l

75、t;p><b>  主要代碼如下:</b></p><p>  if (dlAddUser1.SelectedValue.ToString() == "市級權(quán)限") //添加市級用戶的代碼</p><p><b>  {</b></p><p>  drLogin = new scReader(

76、"select cityid from syscity where cityname='" + dlAddUser2.SelectedValue.ToString() + "'");//查詢市級ID</p><p>  if (drLogin.Read()) </p><p><b>  {</b></p&

77、gt;<p>  cityid= (int)drLogin["cityid"];//保存CityID</p><p>  drLogin = new scReader("insert sysuser(countyid,townid,schoolid,userpower,cityid,username,userpwd) values(0,0,0,0," + ci

78、tyid + ",'" + txtAddUserName.Text + "','" + System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(txtAddUserPwd.Text, "MD5") + "')");</p>

79、<p>  //用戶名,密碼,用戶權(quán)限寫入數(shù)據(jù)庫</p><p>  Response.Write("<script language='javascript'>alert('添加成功!');</script>");//添加成功</p><p>  txtAddUserName.Text = &quo

80、t;";</p><p>  txtAddUserPwd.Text = "";</p><p><b>  }</b></p><p><b>  }</b></p><p>  if (dlAddUser1.SelectedValue.ToString() == &q

81、uot;縣級權(quán)限")//添加縣級權(quán)限的代碼</p><p><b>  {</b></p><p>  drLogin = new scReader("select countyid,cityid from syscounty where countyname='" + dlAddUser2.SelectedValue.ToStr

82、ing() + "'"); //查詢縣級ID,市級ID</p><p>  if (drLogin.Read())</p><p><b>  {</b></p><p>  countyid = (int)drLogin["countyid"]; //保存縣級ID&

83、lt;/p><p>  cityid = (int)drLogin["cityid"]; //保存市級ID</p><p>  drLogin = new scReader("insert sysuser(townid,schoolid,userpower,cityid,countyid,username,userpwd) values(0

84、,0,1," + cityid + "," + countyid + ",'" + txtAddUserName.Text + "','" + System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(txtAddUserPwd.Text, "

85、MD5") + "')");</p><p>  //寫入數(shù)據(jù)庫用戶名,密碼,權(quán)限</p><p>  Response.Write("<script language='javascript'>alert('添加成功!');</script>");//添加成功</p&g

86、t;<p>  txtAddUserName.Text = "";</p><p>  txtAddUserPwd.Text = "";</p><p><b>  }</b></p><p><b>  }</b></p><p>  if (

87、dlAddUser1.SelectedValue.ToString() == "鄉(xiāng)鎮(zhèn)級權(quán)限")//添加鄉(xiāng)鎮(zhèn)級權(quán)限ID</p><p><b>  {</b></p><p>  drLogin = new scReader("select countyid,townid,cityid from systown where townname

88、='" + dlAddUser2.SelectedValue.ToString() + "'");</p><p>  //查詢鄉(xiāng)鎮(zhèn)級ID,縣級ID,市級ID</p><p>  if (drLogin.Read())</p><p><b>  {</b></p><p>

89、  countyid = (int)drLogin["countyid"]; //保存縣級IID</p><p>  townid = (int)drLogin["townid"];//保存鄉(xiāng)鎮(zhèn)級D</p><p>  cityid = (int)drLogin["cityid"];

90、 //保存市級ID</p><p>  drLogin = new scReader("insert sysuser(schoolid,userpower,cityid,townid,countyid,username,userpwd) values(0,2," + cityid +"," + townid + "," + county

91、id + ",'" + txtAddUserName.Text + "','" + System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(txtAddUserPwd.Text, "MD5") + "')"); </p>

92、<p>  //寫入數(shù)據(jù)庫用戶名,密碼,權(quán)限</p><p>  Response.Write("<script language='javascript'>alert('添加成功!');</script>"); //添加成功</p><p>  txtAddUserName

93、.Text = "";</p><p>  txtAddUserPwd.Text = "";</p><p><b>  }</b></p><p><b>  }</b></p><p>  if (dlAddUser1.SelectedValue.ToSt

94、ring() == "學(xué)校權(quán)限")</p><p>  //添加學(xué)校級權(quán)限的代碼</p><p><b>  {</b></p><p>  drLogin = new scReader("select countyid,townid,schoolid,cityid from sysschool where sch

95、oolname='" + dlAddUser2.SelectedValue.ToString() + "'");</p><p>  //查詢學(xué)校級ID,鄉(xiāng)鎮(zhèn)級ID,縣級ID,市級ID</p><p>  if (drLogin.Read())</p><p><b>  {</b></p&g

96、t;<p>  countyid = (int)drLogin["countyid"]; //保存縣級ID</p><p>  townid = (int)drLogin["townid"]; //保存鄉(xiāng)鎮(zhèn)級ID</p><p>  schoolid = (int)drLogin[

97、"schoolid"]; //保存學(xué)校級ID</p><p>  cityid = (int)drLogin["cityid"]; //保存市級ID</p><p>  drLogin = new scReader("insert sysuser(userpower,cityid,sc

98、hoolid,townid,countyid,username,userpwd) values(3," + cityid + "," + schoolid + "," + townid + "," + countyid + ",'" + txtAddUserName.Text + "','" + Syst

99、em.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(txtAddUserPwd.Text, "MD5") + "')"); </p><p>  //寫入數(shù)據(jù)庫用戶名,密碼,權(quán)限</p><p>  Response.Write("<sc

100、ript language='javascript'>alert('添加成功!');</script>");</p><p><b>  //添加成功</b></p><p>  txtAddUserName.Text = "";</p><p>  txtAddU

101、serPwd.Text = "";</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  7.6報表權(quán)限控制</b></p>&

102、lt;p>  在報表錄入數(shù)據(jù)是,同時加入其權(quán)限控制。</p><p>  Userid,CityID,CountyID,TownID,SchoolID,用戶在錄入報表時,同時在報表數(shù)據(jù)中寫入報表與用戶相對應(yīng)的Userid,CityID,CountyID,TownID,SchoolID這幾個值,這樣可以很快查出報表數(shù)據(jù)的所屬地。主要代碼如下:</p><p>  if (Request

103、.QueryString["method"].ToString() == "input")</p><p>  //通過Query得到報表的操作狀態(tài)</p><p><b>  {</b></p><p>  sql1 = "insert ";</p><p>

104、  sql1 += Request.QueryString["table"] + "(";</p><p>  sql2 = " values(";</p><p><b>  try</b></p><p><b>  {</b></p><

105、p>  while (true) </p><p><b>  //構(gòu)造sql語句</b></p><p><b>  {</b></p><p>  sql2 += "'" + Session["A" + num].ToString() + "',&

106、quot;;</p><p>  sql1 += "A" + num + ",";</p><p><b>  num++;</b></p><p><b>  }</b></p><p><b>  }</b></p>&

107、lt;p><b>  catch</b></p><p><b>  {</b></p><p><b>  }</b></p><p>  if (num == 1)</p><p><b>  return;</b></p><

108、;p>  sql1 += "datadate,cityid,countyid,townid,schoolid,userid)";</p><p><b>  //構(gòu)造sql語句</b></p><p>  sql2 += "'" + Request.QueryString["date"].ToS

109、tring() + "'," + cityid + "," + countyid + "," + townid + "," + schoolid + "," + userid + ")";</p><p>  //構(gòu)造sql語句,同時加入數(shù)據(jù)庫表的權(quán)限與范圍</p><

110、;p>  sql1 = sql1 + sql2;</p><p>  sql3 = "insert syslog(tablevalue,userid,logdate,property) values('" + Request.QueryString["table"].ToString() + "'," + userid + &quo

111、t;,'" + Request.QueryString["date"].ToString() + "','添加')";</p><p>  //構(gòu)造數(shù)據(jù)庫日志的SQL語句</p><p>  Label1.Text = sql3;</p><p><b>  }</b&

112、gt;</p><p>  //報表權(quán)限控制代碼</p><p><b>  8 測試</b></p><p>  我的主要工作都放在整個網(wǎng)頁的設(shè)計和開發(fā)方面,每完成一步我都進行了測試,比如數(shù)據(jù)的寫入讀出,操作的記錄情況等。整個系統(tǒng)完成后又做了一個整體的測試,該系統(tǒng)完全能夠正常的運行。</p><p><b>

113、  結(jié) 論</b></p><p>  教育改革能否成功,除了從“教”與“學(xué)”兩方面著手外,行政改革的執(zhí)行同樣扮演著重要的角色。本文提出一個可在網(wǎng)絡(luò)平臺上運作的報表管理系統(tǒng)。本系統(tǒng)應(yīng)用了ASP.NET技術(shù),從設(shè)計到最后測試結(jié)果來看,效果比較明顯,能夠完成解決服務(wù)器端頁面間報表數(shù)據(jù)參數(shù)的傳遞。實現(xiàn)用戶對報表的錄入,增加,和刪除功能。實現(xiàn)每用戶的每次操作記錄功能。四級權(quán)限的設(shè)定以及用戶管理模塊的設(shè)定

114、等功能。報表管理系統(tǒng)前臺界面與后臺數(shù)據(jù)庫結(jié)合緊密,具有簡單易用、容易理解與操作、后端管理等優(yōu)點。當(dāng)然,要作為實際應(yīng)用還有一些具體細節(jié)問題需要解決。設(shè)計中遇到的問題主要是后臺腳本程序的編寫問題。后臺腳本程序的編寫需要知識與經(jīng)驗的積累,是一個長期的過程。</p><p>  本系統(tǒng)已經(jīng)開發(fā)完成且已經(jīng)投入到實際的運行中,現(xiàn)在最需要的是以實際的地方教育局下的學(xué)校信息作為原始資料來測試本系統(tǒng),驗證本系統(tǒng)的運作結(jié)果是否可以達

115、道預(yù)期的設(shè)計目標(biāo)。</p><p><b>  參考文獻</b></p><p>  [1] 易向東,陳蓓,萬英.C#程序員開發(fā)指南[M].北京:中國林業(yè)出版社,2006。</p><p>  [2] Simon Pobinson等.Professional C#[M].北京:清華大學(xué)出版社,2002。</p><p>

116、  [3] James W.Cooper.C# Design Patterns[M].北京:電子工業(yè)出版社,2004。</p><p>  [4] Richard Blum.C# Network Programming[M].北京:電子工業(yè)出版社,2003。</p><p>  [5] 狄龍(Darin Dillon)..NET開發(fā)人員調(diào)試策略[M].北京:清華大學(xué)出版社,2004。<

117、;/p><p>  [6] 方睿,刁仁宏,吳四九.網(wǎng)絡(luò)數(shù)據(jù)庫原理及應(yīng)用[M].成都:四川大學(xué)出版社, 2005。</p><p>  [7] Chris H.Pappas,William.Murray. C#精髓[M].北京:人民郵電出版社, 2002。</p><p>  [8] Jeffrey.McManus Chris Kinsman著 常曉波,朱劍平 譯.C#開

118、發(fā)人員指南——ASP.NET、XML、Web服務(wù)與ADO.NET[M].北京:中國電力出版社,2003。</p><p><b>  致 謝</b></p><p>  本論文的工作是 2007年2月至2007年6月在成都信息工程學(xué)院網(wǎng)絡(luò)工程系完成的。在開發(fā)的過程中,我首先要感謝我的指導(dǎo)老師李誼瑞,選擇這個課題讓我能夠接觸很多美妙和豐富的內(nèi)容,并且從設(shè)計思想到具

119、體關(guān)鍵技術(shù)、難點技術(shù)上給了我極大的幫助和指導(dǎo);其次要感謝的是我的合作伙伴王鎮(zhèn)川,正是有了我們的合作,開發(fā)的過程中才能迎難而上,克服重重困難,最后終于開發(fā)出了報表管理系統(tǒng)</p><p>  總之,沒有大家的幫助和鼓勵,就沒有報表系統(tǒng)的順利完成,報表系統(tǒng)是大家的成果,很高興能有這個機會和大家一起分享和成長!</p><p><b>  聲 明</b></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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論