版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 本系統(tǒng)采用B/S(Browser/Server)結(jié)構(gòu),ASP.NET為開發(fā)語言,SQL Server 2005為數(shù)據(jù)庫來進(jìn)行設(shè)計(jì)與開發(fā)。該系統(tǒng)主的功能是幫助人們管理學(xué)校人文科研項(xiàng)目等。基本功能包括登錄、項(xiàng)目展示、成果展示、人員展示、科研分查詢等。本論文,簡要闡述了此次畢業(yè)設(shè)計(jì)題目“科研管理系統(tǒng)”的開發(fā)背景與開發(fā)環(huán)境,且對(duì)系
2、統(tǒng)的構(gòu)架進(jìn)行分析,并由此劃分出各個(gè)模塊,有基礎(chǔ)管理模塊、人員管理模塊、部門管理模塊、項(xiàng)目管理模塊、成果管理模塊、科研分管理模塊。詳細(xì)介紹了系統(tǒng)各個(gè)模塊與功能的實(shí)現(xiàn)原理,本文詳細(xì)介紹了網(wǎng)上系統(tǒng)的需求分析、功能設(shè)計(jì)和系統(tǒng)設(shè)計(jì)等,并通過流程圖和文字加以解釋說明。在系統(tǒng)設(shè)計(jì)中給出數(shù)據(jù)庫的設(shè)計(jì)和本系統(tǒng)的總體設(shè)計(jì)方案,在系統(tǒng)實(shí)現(xiàn)中具體介紹了各個(gè)功能的所能實(shí)現(xiàn)的情況和主要代碼,同時(shí)附有運(yùn)行界面圖,最后總結(jié)開發(fā)階段與測(cè)試階段所遇到的問題與解決方法。&l
3、t;/p><p> 關(guān)鍵詞:ASP.NET、SQL Server2005、三層結(jié)構(gòu)、Ajax技術(shù)、角色、安全</p><p><b> 目 錄</b></p><p> 第一章 系統(tǒng)開發(fā)理論依據(jù)1</p><p> 1.1 ASP.NET概述1</p><p> 1.1.1 ASP
4、.NET基本含義和特點(diǎn)1</p><p> 1.1.2 ASP.NET的優(yōu)點(diǎn)1</p><p> 1.2 SQL介紹2</p><p> 1.3 B/S結(jié)構(gòu)介紹2</p><p><b> 1.4三層架構(gòu)3</b></p><p> 第二章 需求分析和系統(tǒng)功能設(shè)計(jì)5</
5、p><p> 2.1系統(tǒng)項(xiàng)目依據(jù)及目標(biāo)5</p><p> 2.2系統(tǒng)功能模型的建立6</p><p> 第三章 系統(tǒng)規(guī)劃和概要設(shè)計(jì)8</p><p> 3.1 系統(tǒng)功能模塊8</p><p> 3.2 方法概要10</p><p> 3.3系統(tǒng)流程圖10</p>
6、<p> 3.3.1系統(tǒng)的邏輯體系結(jié)構(gòu)10</p><p> 3.3.2系統(tǒng)流程圖11</p><p> 3.4系統(tǒng)解決方案項(xiàng)目構(gòu)成13</p><p> 第四章 數(shù)據(jù)庫層的設(shè)計(jì)與實(shí)現(xiàn)15</p><p> 4.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)15</p><p> 4.2數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計(jì)1
7、5</p><p> 4.3 存儲(chǔ)過程設(shè)計(jì)18</p><p> 4.4 數(shù)據(jù)庫安全設(shè)計(jì)20</p><p> 第五章 業(yè)務(wù)邏輯層設(shè)計(jì)與實(shí)現(xiàn)22</p><p> 5.1 實(shí)體類設(shè)計(jì)22</p><p> 5.2數(shù)據(jù)訪問層設(shè)計(jì)23</p><p> 5.3業(yè)務(wù)邏輯層設(shè)計(jì)2
8、4</p><p> 第六章 界面表示層設(shè)計(jì)26</p><p> 6.1學(xué)術(shù)期刊的增、刪、改、查、設(shè)計(jì)26</p><p> 第七章 系統(tǒng)測(cè)試,維護(hù)以及安全30</p><p> 7.1系統(tǒng)測(cè)試30</p><p> 7.1.2 系統(tǒng)運(yùn)行30</p><p> 7.2系統(tǒng)
9、維護(hù)30</p><p> 7.3系統(tǒng)安全30</p><p> 第八章 系統(tǒng)總結(jié)33</p><p><b> 參考文獻(xiàn)36</b></p><p> 第一章 系統(tǒng)開發(fā)理論依據(jù)</p><p> 1.1 ASP.NET概述 </p><p> 1.1.
10、1 ASP.NET基本含義和特點(diǎn) </p><p> ASP是Active Server Page的縮寫,意為“活動(dòng)服務(wù)器網(wǎng)頁”。ASP是微軟公司開發(fā)的代替CGI腳本程序的一種應(yīng)用,它可以與數(shù)據(jù)庫和其它程序進(jìn)行交互,是一種簡單、方便的編程工具。ASP的網(wǎng)頁文件的格式是.asp,現(xiàn)在常用于各種動(dòng)態(tài)網(wǎng)站中。 ASP是一種服務(wù)器端腳本編寫環(huán)境,可以用來創(chuàng)建和運(yùn)行動(dòng)態(tài)網(wǎng)頁或web應(yīng)用程序。ASP網(wǎng)頁可以包含HTML標(biāo)記
11、、普通文本、腳本命令以及COM組件等。利用ASP可以向網(wǎng)頁中添加交互式內(nèi)容(如在線表單),也可以創(chuàng)建使用HTML網(wǎng)頁作為用戶界面的web應(yīng)用程序。 與HTML相比,ASP網(wǎng)頁具有以下特點(diǎn): </p><p> ?。?)利用ASP可以實(shí)現(xiàn)突破靜態(tài)網(wǎng)頁的一些功能限制,實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁技術(shù); </p><p> (2)ASP文件是包含在HTML代碼所組成的文件中的,易于修改和測(cè)試; </p&
12、gt;<p> ?。?)服務(wù)器上的ASP解釋程序會(huì)在服務(wù)器端制定ASP程序,并將結(jié)果以HTML格式傳送到客戶端瀏覽器上,因此使用各種瀏覽器都可以正常瀏覽ASP所產(chǎn)生的網(wǎng)頁; </p><p> ?。?)ASP提供了一些內(nèi)置對(duì)象,使用這些對(duì)象可以使服務(wù)器端腳本功能更強(qiáng)。例如可以從web瀏覽器中獲取用戶通過HTML表單提交的信息,并在腳本中對(duì)這些信息進(jìn)行處理,然后向web瀏覽器發(fā)送信息; </p&
13、gt;<p> ?。?)ASP可以使用服務(wù)器端ActiveX組建來執(zhí)行各種各樣的任務(wù),例如存取數(shù)據(jù)庫、發(fā)現(xiàn)那個(gè)Email或訪問文件系統(tǒng)等。 </p><p> ?。?)由于服務(wù)器是將ASP程序執(zhí)行的結(jié)果以HTML格式傳回客戶端瀏覽器,因此使用者不會(huì)看到ASP所編寫的原始程序代碼,可放置ASP程序代碼被竊取。</p><p> ASP.NET不僅僅是 Active Serve
14、r Page (ASP) 的下一個(gè)版本,而且是一種建立在通用語言上的程序構(gòu)架,能被用于一臺(tái)Web服務(wù)器來建立強(qiáng)大的Web應(yīng)用程序。ASP.net提供許多比現(xiàn)在的Web開發(fā)模式強(qiáng)大的優(yōu)勢(shì)。</p><p> 1.1.2 ASP.NET的優(yōu)點(diǎn) </p><p> ASP.NET的主要優(yōu)點(diǎn)大概可以歸納如下: </p><p> ?。?)ASP.NET是把基于通用語言的
15、程序在服務(wù)器上運(yùn)行。不像以前的ASP即時(shí)解釋程序,而是將程序在服務(wù)器端首次運(yùn)行時(shí)進(jìn)行編譯,這樣的執(zhí)行效果,當(dāng)然比一條一條的解釋強(qiáng)很多。</p><p> ?。?)ASP.NET構(gòu)架是可以用Microsoft(R)公司最新的產(chǎn)品 Visual Studio.net開發(fā)環(huán)境進(jìn)行開發(fā),WYSIWYG(What You See Is What You Get所見即為所得)的編輯。這些僅是ASP.net強(qiáng)大化軟件支持的一小
16、部分。</p><p> ?。?)因?yàn)锳SP.NET是基于通用語言的編譯運(yùn)行的程序,所以它的強(qiáng)大性和適應(yīng)性,可以使它運(yùn)行在Web應(yīng)用軟件開發(fā)者的幾乎全部的平臺(tái)上(筆者到現(xiàn)在為止只知道它只能用在Windows 2000 Server上)。通用語言的基本庫,消息機(jī)制,數(shù)據(jù)接口的處理都能無縫的整合到ASP.net的Web應(yīng)用中。ASP.net同時(shí)也是language-independent語言獨(dú)立化的,所以,你可以選擇
17、一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現(xiàn)在已經(jīng)支持的有C#(C++和Java的結(jié)合體),VB,Jscript。將來,這樣的多種程序語言協(xié)同工作的能力保護(hù)您現(xiàn)在的基于COM+開發(fā)的程序,能夠完整的移植向ASP.net。</p><p> ASP.NET一般分為兩種開發(fā)語言,VB.NET和C#,C#相對(duì)比較常用,因?yàn)槭?NET獨(dú)有的語言,VB.NET則為以前VB程序設(shè)計(jì),適合于以前VB程
18、序員,如果新接觸.NET,沒有其他開發(fā)語言經(jīng)驗(yàn),建議直接學(xué)習(xí)C#。(4)ASP是運(yùn)行在服務(wù)器端,所以無須擔(dān)心瀏覽器是否支持ASP所使用的編程語言,用戶端只要使用可執(zhí)行HTML碼的瀏覽器,即可瀏覽Active Server Pages所設(shè)計(jì)的網(wǎng)頁內(nèi)容。ASP在服務(wù)器端運(yùn)行,當(dāng)程序執(zhí)行完畢后,服務(wù)器僅將執(zhí)行的結(jié)果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負(fù)擔(dān),大大提高了交互的速度。 </p><p> ?。?)A
19、ctive Server Pages的程序代碼隱藏,在客戶端上僅可以看到由ASP輸出的動(dòng)態(tài)HTML文件。因而可以避免所寫的源程序被他人剽竊,也提高了程序的安全性。</p><p> ?。?)可使用服務(wù)器端的腳本來產(chǎn)生客戶端的腳本。 </p><p> ?。?)面向?qū)ο螅∣bject oriented),并可擴(kuò)展ActiveX Server組件功能。 </p><p>
20、; ?。?)ActiveX Server Components(ActiveX服務(wù)器組件)具有無限可擴(kuò)充性。可以使用任何編程語言來編寫所需要的ActiveX Server 組件。 </p><p> ?。?)可以通過ADO(ActiveX Data Objects,微軟的一種新的數(shù)據(jù)訪問模型,是一種可以提供WEB頁面開發(fā)者輕松存取Inter的數(shù)據(jù)庫,并可以在用戶端實(shí)現(xiàn)網(wǎng)上立即、即時(shí)更新顯示的最新WEB頁面數(shù)據(jù)庫技
21、術(shù)。)非常方便地訪問數(shù)據(jù)庫,從而使存取數(shù)據(jù)庫變得輕松容易。 </p><p> 1.2 SQL介紹 </p><p> SQL是英文Structured Query Language的縮寫,意思為結(jié)構(gòu)化查詢語言。SQL語言的主要功能就是同各種數(shù)據(jù)庫建立聯(lián)系,進(jìn)行溝通。按照ANSI(美國國家標(biāo)準(zhǔn)協(xié)會(huì))的規(guī)定,SQL被作為關(guān)系型數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言。SQL語句可以用來執(zhí)行各種各樣的操作
22、,例如更新數(shù)據(jù)庫中的數(shù)據(jù),從數(shù)據(jù)庫中提取數(shù)據(jù)等。目前,絕大多數(shù)流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),如Oracle, Sybase, Microsoft SQL Server, Access等都采用了SQL語言標(biāo)準(zhǔn)。雖然很多數(shù)據(jù)庫都對(duì)SQL語句進(jìn)行了再開發(fā)和擴(kuò)展,但是包括Select, Insert, Update, Delete, Create,以及Drop在內(nèi)的標(biāo)準(zhǔn)的SQL命令仍然可以被用來完成幾乎所有的數(shù)據(jù)庫操作。</p>&
23、lt;p> 1.3 B/S結(jié)構(gòu)介紹 </p><p> B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Inter技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過www瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)
24、維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(TCO)。 </p><p> 以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過Inter/Intra模式下數(shù)據(jù)庫應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開發(fā),能實(shí)現(xiàn)不同的人員, 從不同的地點(diǎn),以不同的接入方式(比如LAN, WAN, Inter/Intra等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫也很安全。
25、</p><p><b> 1.4三層架構(gòu)</b></p><p> 隨著軟件工程的不斷進(jìn)步和規(guī)范以及面向?qū)ο缶幊趟枷氲膽?yīng)用,人們對(duì)封裝、復(fù)用、擴(kuò)展、移置等方面的要求,使得雙層架構(gòu)顯然更加臃腫繁瑣,三層程序架構(gòu)體系應(yīng)運(yùn)而生,可以說,三層架構(gòu)體系結(jié)構(gòu)是面向?qū)ο笏枷氚l(fā)展中的必然產(chǎn)物。所謂三層架構(gòu),是在客戶/服務(wù)之間加入了一個(gè)"中間層",也叫組件層。
26、它與客戶層、服務(wù)器層共同構(gòu)成了三層體系。這里所說的三層體系,不是指物理上的三層,不是簡單地放置三臺(tái)機(jī)器就是三層體系結(jié)構(gòu),也不僅僅有B/S應(yīng)用才有三層體系結(jié)構(gòu),三層是指邏輯上的三層。通過引入中間層,將復(fù)雜的商業(yè)邏輯從傳統(tǒng)的雙層結(jié)構(gòu)(Client-Server)應(yīng)用模型中分離出來,并提供了可伸縮、易于訪問、易于管理的方法,可以將多種應(yīng)用服務(wù)分別封裝部署于應(yīng)用服務(wù)器,同時(shí)增強(qiáng)了應(yīng)用程序可用性、安全性、封裝復(fù)用性、可擴(kuò)展性和可移置性,使用戶在管
27、理上所花費(fèi)的時(shí)間最小化,從而實(shí)現(xiàn)了便捷、高效、安全、穩(wěn)定的企業(yè)級(jí)系統(tǒng)應(yīng)用。三層體系架構(gòu)具體包括:表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層。</p><p> (1) 表示層:即用戶接口層,是由ASP.NET技術(shù)的Web窗體和Web用戶控件組合起來構(gòu)成的。表示層運(yùn)行在客戶端瀏覽器上,產(chǎn)生用戶視圖。在業(yè)務(wù)邏輯層發(fā)生變化時(shí)通過改變表示層的組合以及做一些簡單的調(diào)整就可以很好地適應(yīng)新的業(yè)務(wù)邏輯層。</p><p
28、> (2) 業(yè)務(wù)邏輯層:這一層是從整個(gè)系統(tǒng)功能設(shè)計(jì)中抽取大量具有共性的模塊,把它們統(tǒng)一設(shè)計(jì)成為系統(tǒng)公共的可重用的組件。由COM+組件服務(wù)管理器統(tǒng)一配置管理組件。</p><p> (3) 數(shù)據(jù)訪問層:用來管理和存儲(chǔ)數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)訪問功能,設(shè)計(jì)數(shù)據(jù)庫,定義數(shù)據(jù)表結(jié)構(gòu)、表的索引、數(shù)據(jù)表之間的關(guān)聯(lián),定義數(shù)據(jù)庫中的視圖以及操作數(shù)據(jù)的存儲(chǔ)過程,設(shè)計(jì)數(shù)據(jù)庫的安全等等。該層由數(shù)據(jù)庫管理系統(tǒng)如SQL Server來管理
29、和控制。</p><p> 第二章 需求分析和系統(tǒng)功能設(shè)計(jì)</p><p> 信息系統(tǒng)的開發(fā)不僅僅是一個(gè)應(yīng)用程序的編寫過程,最重要的是在系統(tǒng)分析和系統(tǒng)設(shè)計(jì)的階段所做的的工作,科研管理系統(tǒng)是基于Microsoft Visual Studio 2008系統(tǒng)開發(fā)的Web應(yīng)用程序,它針對(duì)有關(guān)目標(biāo)設(shè)計(jì)系統(tǒng)開發(fā)背景,運(yùn)行環(huán)境等進(jìn)行分析,通過數(shù)據(jù)庫需求分析、系統(tǒng)功能模塊設(shè)計(jì)等實(shí)現(xiàn)系統(tǒng)及功能模塊??蒲?/p>
30、水平逐漸成為衡量一個(gè)高校的重要指標(biāo),高校作為重要的科研機(jī)構(gòu),如何對(duì)學(xué)校大量的科研信息進(jìn)行高效、安全的保存、處理、統(tǒng)計(jì)、加工等管理操作,將日常的科研管理工作更加規(guī)范化、科學(xué)化,建立高??蒲泄芾硐到y(tǒng)進(jìn)行科研管理工作是每一個(gè)高校必由之路。高??蒲泄芾硐到y(tǒng)數(shù)據(jù)庫設(shè)計(jì)是高??蒲泄芾硐到y(tǒng)設(shè)計(jì)中的一項(xiàng)核心工作,所有的管理工作都必須以數(shù)據(jù)庫為中心,進(jìn)而建立高??蒲泄芾硐到y(tǒng)。</p><p> 2.1系統(tǒng)項(xiàng)目依據(jù)及目標(biāo)</
31、p><p> 科研管理系統(tǒng)是以科研項(xiàng)目流程為核心,全方位通過計(jì)算機(jī)來管理科研項(xiàng)目申報(bào)、項(xiàng)目開題、項(xiàng)目合同、實(shí)施進(jìn)度、項(xiàng)目結(jié)題、科研成果、項(xiàng)目經(jīng)費(fèi)、分類匯總分析和科研分計(jì)算等科研活動(dòng),以達(dá)到方便、高效地管理和控制,提高管理效能。該系統(tǒng)既滿足學(xué)院領(lǐng)導(dǎo)和科研決策者對(duì)科研活動(dòng)的宏觀管理與決策的需要,滿足科研管理部門對(duì)教師科研分的統(tǒng)計(jì)、匯總和查詢,也滿足各系部單位或本人對(duì)科研項(xiàng)目的查詢和管理工作,同時(shí)也便于和教育廳的科研管理
32、系統(tǒng)的數(shù)據(jù)進(jìn)行對(duì)接。</p><p><b> 系統(tǒng)項(xiàng)目內(nèi)容:</b></p><p> 1. 實(shí)現(xiàn)對(duì)科研日常事務(wù)的管理:科研項(xiàng)目、科研成果、完成情況等信息管理。</p><p> 2. 實(shí)現(xiàn)對(duì)科研信息的查詢、教師科研分的查詢。</p><p> 3. 提供全方位的科研管理服務(wù),為學(xué)校各項(xiàng)科研管理業(yè)務(wù)提供信息化支
33、持。</p><p> 4. 輔助科研負(fù)責(zé)人或科研管理者管理相應(yīng)的科研工作,及時(shí)掌握、了解學(xué)院教師的科研情況,方便且高效地完成科研管理工作。</p><p> 系統(tǒng)目標(biāo)及要解決的問題:</p><p> 系統(tǒng)能及時(shí)為學(xué)校提供科研信息,輔助管理人員制定科研計(jì)劃;分析科研計(jì)劃及合同完成情況,實(shí)現(xiàn)對(duì)科研任務(wù)、科研計(jì)劃、合同執(zhí)行的管理和控制;完成科研工作量的計(jì)算、統(tǒng)計(jì)
34、、審核;構(gòu)建系統(tǒng)的安全解決方案,確保系統(tǒng)的安全性和保密性;實(shí)現(xiàn)對(duì)科研工作人員的管理及登錄系統(tǒng)時(shí)的權(quán)限分配。</p><p> 該系統(tǒng)需要解決的功能包括項(xiàng)目申報(bào)、成果管理、經(jīng)費(fèi)管理、綜合查詢、科研分管理、角色管理、部門及人員管理、數(shù)據(jù)安全性、數(shù)據(jù)導(dǎo)入導(dǎo)出等。</p><p><b> 1. 項(xiàng)目管理功能</b></p><p> 項(xiàng)目申報(bào)查
35、詢:用于按時(shí)間段、申報(bào)單位、項(xiàng)目名稱、項(xiàng)目編號(hào)等條件下進(jìn)行項(xiàng)目申報(bào)信息的總體信息查詢;項(xiàng)目申報(bào)編輯:用于對(duì)個(gè)人申報(bào)的信息進(jìn)行增、刪、改等編輯操作;項(xiàng)目日常管理:用于對(duì)項(xiàng)目進(jìn)程過程中日常信息的編輯管理工作。</p><p> 2. 成果管理功能 提供科研成果信息的輸入,編輯,查詢等功能。</p><p> 3. 經(jīng)費(fèi)管理功能 提供科研經(jīng)費(fèi)信息的輸入,編輯,查詢等功能。</p&g
36、t;<p> 4. 部門及人員管理功能 </p><p> 部門管理:設(shè)置相關(guān)部門名稱;人員管理:查詢或設(shè)置科研人員的基礎(chǔ)資料。</p><p> 5. 科研分管理功能 科研分的審核、統(tǒng)計(jì)、查詢和報(bào)表等功能。</p><p><b> 6. 角色管理功能</b></p><p> 角色分配:建
37、立系統(tǒng)操作中各類人員角色信息,用于進(jìn)行權(quán)限控制,系統(tǒng)中角色分為四個(gè)層次:校管理級(jí)別、系部等二級(jí)部門級(jí)別、普通教師級(jí)別和系統(tǒng)維護(hù)級(jí)別。</p><p> 7. 綜合查詢功能 用于查詢本級(jí)及本級(jí)以下角色用戶的項(xiàng)目信息。</p><p> 2.2系統(tǒng)功能模型的建立</p><p> 通過 對(duì)安徽財(cái)貿(mào)職業(yè)學(xué)院科研管理的需求調(diào)研、分析,將科研管理系統(tǒng)分為科研項(xiàng)目管理、
38、科研成果管理、學(xué)校機(jī)構(gòu)管理、部門人員管理、科研信息查詢、基礎(chǔ)數(shù)據(jù)維護(hù)、權(quán)限管理等幾個(gè)主要的模塊,使用該系統(tǒng)的人員可以分為系統(tǒng)維護(hù)員、系管理員、校管理員、一般教師等幾種角色。</p><p> (1) 系統(tǒng)維護(hù)員:整個(gè)系統(tǒng)的管理者,具有最大的權(quán)限功能,主要完成用戶角色信息的管理、部門信息的管理、系統(tǒng)基礎(chǔ)數(shù)據(jù)的維護(hù)等。</p><p><b> (2) 系管理員:</b&g
39、t;</p><p> (3 ) 校管理員:</p><p> (4 ) 一般教師:</p><p> 不同的角色完成不同的功能。系統(tǒng)功能模型如圖所示</p><p> 第三章 系統(tǒng)規(guī)劃和概要設(shè)計(jì)</p><p> 3.1 系統(tǒng)功能模塊</p><p> 學(xué)??蒲泄芾硐到y(tǒng)的主要任務(wù)是
40、用計(jì)算機(jī)對(duì)各種科研信息進(jìn)行日常的管理,如查詢、修改、增加、刪除以及存儲(chǔ)等,迅速準(zhǔn)確地完成各種科研信息的統(tǒng)計(jì)計(jì)算和匯總工作,快速打印出科研信息報(bào)表,針對(duì)系統(tǒng)服務(wù)對(duì)象的具體要求,設(shè)計(jì)了學(xué)校科研管理系統(tǒng)。系統(tǒng)主要包括基礎(chǔ)管理、部門管理、人員管理、項(xiàng)目管理、成果管理、科研分管理六大模塊。各模塊之間并非各個(gè)獨(dú)立,而是相互聯(lián)系,相互關(guān)聯(lián)在一起的,從而使本系統(tǒng)能夠很好的完成所設(shè)計(jì)的功能。系統(tǒng)有四種不同角色:普通教員、系管理員、校管理員。不同角色可做不
41、同的操作。該系統(tǒng)功能模塊及其子模塊如圖3-1:</p><p> 1.普通教員登錄:可以瀏覽、查看基礎(chǔ)管理中的所有信息、可以編輯個(gè)人信息,可以瀏覽、查看所在系信息和系中所有教研室信息,可以瀏覽、查看、編輯本人的項(xiàng)目、項(xiàng)目工作量信息,申報(bào)項(xiàng)目、項(xiàng)目經(jīng)費(fèi),瀏覽查看本人成果、成果獲獎(jiǎng)信息,申報(bào)成果、成果經(jīng)費(fèi),科研分根據(jù)項(xiàng)目和成果自動(dòng)添加,可以查看、編輯本人的科研分。</p><p> 2.系
42、管理員登錄:可以瀏覽、查看基礎(chǔ)管理中的所有信息、可以編輯個(gè)人信息,可以瀏覽、查看所在系信息和系中所有教研室信息,可以新增、編輯教研室,可以瀏覽、查看、編輯系內(nèi)的項(xiàng)目、項(xiàng)目工作量信息,申報(bào)項(xiàng)目、項(xiàng)目經(jīng)費(fèi),瀏覽查看系內(nèi)成果、成果獲獎(jiǎng)信息,申報(bào)成果、成果經(jīng)費(fèi),科研分根據(jù)項(xiàng)目和成果自動(dòng)添加,可以查看、編輯本系的科研分。</p><p> 3.校管理員登錄:可以瀏覽、查看基礎(chǔ)管理中的所有信息、可以新增和編輯,可以編輯個(gè)人
43、信息,可以瀏覽、查看所有系信息和系中所有教研室信息以及研究機(jī)構(gòu),可以新增、編輯系部、研究機(jī)構(gòu)和教研室,可以瀏覽、查看、編輯校內(nèi)所有項(xiàng)目、項(xiàng)目工作量信息,申報(bào)項(xiàng)目、項(xiàng)目經(jīng)費(fèi)以及審核申報(bào)的項(xiàng)目,瀏覽查看校內(nèi)所有成果、成果獲獎(jiǎng)信息,申報(bào)成果、成果經(jīng)費(fèi)以及審核申報(bào)的成果,科研分根據(jù)項(xiàng)目和成果自動(dòng)添加。,可以查看、編輯本校的科研分。</p><p><b> 3.2 方法概要</b></p&g
44、t;<p> 科研管理系統(tǒng)是采用面向?qū)ο蟮某绦蛟O(shè)計(jì)思想進(jìn)行編制的。用戶可以通過主菜單調(diào)用系統(tǒng)的各項(xiàng)功能。</p><p> ?。?)面向?qū)ο笤O(shè)計(jì)不再是單純的從代碼的第一行一直編到最后一行,而是考慮如何創(chuàng)建類和對(duì)象,利用類和對(duì)象來簡化程序設(shè)計(jì),并提供代碼的封裝和可重用性,便于程序的維護(hù)與擴(kuò)展。</p><p> (2)所謂的對(duì)象是一種抽象的名稱,用來對(duì)應(yīng)實(shí)現(xiàn)世界存在的“東西
45、”。一個(gè)窗口、一個(gè)按鈕、一個(gè)菜單都可視為一個(gè)對(duì)象,而按鈕對(duì)象、菜單對(duì)象、又會(huì)出現(xiàn)在窗口對(duì)象中,因此按鈕對(duì)象、菜單對(duì)象便是窗口的組件之一。對(duì)象內(nèi)部的數(shù)據(jù)是不能隨意更改的,必須由外部向其傳遞信息,再由對(duì)象按其方法加以處理。用戶無需知道其任何細(xì)節(jié),操作是封閉的,對(duì)象之間能通過方法調(diào)用相互通信。</p><p> ?。?)類可視為一個(gè)產(chǎn)品模具、一個(gè)模塊。在面向?qū)ο笤O(shè)計(jì)中,類是對(duì)象的原型,是對(duì)象的制作器。類的概念是面向?qū)ο?/p>
46、程序設(shè)計(jì)最重要的特征。所謂類,是指由數(shù)據(jù)結(jié)構(gòu)及其相關(guān)操作所形成的集合,描述該類任一對(duì)象的共同的行為特征,是對(duì)一組性質(zhì)相同的對(duì)象的程序描述,概括了對(duì)象的共同性質(zhì)和數(shù)據(jù)。</p><p><b> 3.3系統(tǒng)流程圖</b></p><p> 3.3.1系統(tǒng)的邏輯體系結(jié)構(gòu)</p><p> 本系統(tǒng)采用當(dāng)前流行的B/S設(shè)計(jì)模式,基于Windows
47、.NET平臺(tái)構(gòu)建Web應(yīng)用程序,把系統(tǒng)劃分為數(shù)據(jù)層、業(yè)務(wù)邏輯層和表示層。邏輯體系結(jié)構(gòu)如圖3-2所示:</p><p> 3.3.2系統(tǒng)流程圖</p><p> 本系統(tǒng)分為三個(gè)角色:教員、系管理員、校管理員,每個(gè)角色具有自己不同的權(quán)限。下面會(huì)通過流程圖一一做出分析介紹。</p><p> 教師角色:教師登錄系統(tǒng)后可以操作屬于自己的信息,可以瀏覽查看學(xué)校的公共信息
48、。可以申報(bào)自己的項(xiàng)目和成果、項(xiàng)目經(jīng)費(fèi)和成果經(jīng)費(fèi)、瀏覽查看自己的項(xiàng)目和成果信息、瀏覽查看自己的科研分情況等權(quán)限。</p><p> 系管理員角色:系管理員也可以操作自己的信息和瀏覽學(xué)校的公共信息。此外系管理員還可以瀏覽本系的所有教研室及教研室人員,編輯、新增、刪除教研室人員。瀏覽和編輯本系的所有項(xiàng)目和成果信息。瀏覽戲中科研分信息等。</p><p> 校管理員角色:校管理員亦可以操作自己
49、的信息??梢詾g覽、編輯、新增、刪除學(xué)校的公共信息。審核申報(bào)的項(xiàng)目和成果,瀏覽和編輯項(xiàng)目和成果信息、項(xiàng)目經(jīng)費(fèi)和成果經(jīng)費(fèi)、科研分等信息。</p><p> 流程圖如圖3-3和圖3-4:</p><p> 3.4系統(tǒng)解決方案項(xiàng)目構(gòu)成</p><p> 為了用B/S設(shè)計(jì)模式的三層體系結(jié)構(gòu)實(shí)現(xiàn)本電子商務(wù)系統(tǒng)的設(shè)計(jì),本人用Visual Studio.NET 2008簡體中
50、文企業(yè)版設(shè)計(jì)了一個(gè)名為“kyglSystem”的科研管理系統(tǒng)解決方案,用VC#語言在該解決方案中建立了四個(gè)項(xiàng)目,如圖3-5所示,這四個(gè)項(xiàng)目的有機(jī)結(jié)合,構(gòu)成了本科研管理系統(tǒng)。這四個(gè)項(xiàng)目分別和B/S設(shè)計(jì)模式的三層體系結(jié),如圖4-4。</p><p><b> 圖3-5 解決方案</b></p><p> 這四個(gè)項(xiàng)目分別為:Web表示層、BLL業(yè)務(wù)邏輯類、DAL數(shù)據(jù)訪問
51、類、Model實(shí)體類。各層之間互相的引用聯(lián)系是:首先要將實(shí)體類(Model)命名空間在其它各層全部引用,表示層(Web)命名空間中再引用業(yè)務(wù)邏輯類(BLL),業(yè)務(wù)邏輯類(BLL)再引用數(shù)據(jù)訪問類(DAL)。</p><p> 第四章 數(shù)據(jù)庫層的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 4.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)</p><p> (1)局部E-R圖,下圖為人員信息的E-R
52、圖(圖4-1)。</p><p> 圖4-1 學(xué)術(shù)期刊E-R圖</p><p> ?。?)集成E-R圖,下圖為人員信息表的部分關(guān)聯(lián)信息,如圖4-2。</p><p> 圖4-2 學(xué)術(shù)期刊集成E-R圖</p><p> 4.2數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計(jì)</p><p> 數(shù)據(jù)庫是所有系統(tǒng)設(shè)計(jì)中的靈魂部分,沒有數(shù)據(jù)庫的系統(tǒng)是
53、毫無價(jià)值的,是個(gè)殘廢的系統(tǒng),所以,數(shù)據(jù)庫是個(gè)很重要的部分。下面就詳細(xì)介紹數(shù)據(jù)庫的設(shè)計(jì)。</p><p> 主管單位表:Charge_Unit_Code</p><p> Chage_unit_code(主管單位表):用來存儲(chǔ)主管單位的詳細(xì)信息,主鍵為主管單位編號(hào)Id,其為標(biāo)識(shí)列,主管單位名稱charge_unit_name。表各字段設(shè)計(jì)如表4-1</p><p>
54、;<b> 表4-1</b></p><p> 可以看出,主管單位表里主管單位名稱不可以為空,因?yàn)閱T工編號(hào)是主鍵,主鍵不可以為空。</p><p> 學(xué)術(shù)期刊表:Magazine</p><p> Magazine(學(xué)術(shù)期刊表):用來存儲(chǔ)學(xué)術(shù)期刊信息,主鍵期刊編號(hào)Id,其同時(shí)也為標(biāo)識(shí)列,還有期刊名稱、主辦單位、期刊等級(jí)、學(xué)科類型Id(為
55、了查詢方便才設(shè)置此列)、學(xué)科名稱、發(fā)行單位、創(chuàng)刊日期、發(fā)行方式、發(fā)行周期、頁數(shù)、開本、主編、聯(lián)系電話、聯(lián)系地址、電子郵箱、網(wǎng)址、CN號(hào)、ISBN號(hào)、CN和ISBN號(hào)。表各字段設(shè)計(jì)如表4-2</p><p><b> 表5-2</b></p><p> 在學(xué)術(shù)期刊表中期刊編號(hào)和期刊名稱都不可以為空,因?yàn)檫@兩個(gè)在數(shù)據(jù)庫中都是起到關(guān)鍵的作用,所以,不可以為空。</
56、p><p> 主管單位表:main_manage_unit</p><p> main_manage_unit(主管單位表):用來存儲(chǔ)主管單位的詳細(xì)信息,主鍵主管單位編號(hào)Id,其同時(shí)也為標(biāo)識(shí)列,還有主管單位名稱、負(fù)責(zé)人姓名、聯(lián)系電話、練習(xí)地址、電子郵箱、學(xué)校。其表各字段設(shè)計(jì)如表:4-3</p><p><b> 表4-3</b></p&
57、gt;<p> 期刊等級(jí)表:Magazine_grade_Code</p><p> Magazine_grade_Code(期刊等級(jí)表):用來存儲(chǔ)期刊等級(jí)的詳細(xì)信息,主鍵為期刊等級(jí)編號(hào)Id,其同時(shí)也為標(biāo)識(shí)列,另外還有期刊等級(jí)名稱。其表各字段設(shè)計(jì)如表:4-4</p><p><b> 表4-4</b></p><p> 由
58、于本系統(tǒng)數(shù)據(jù)庫涉及的表太多,只列舉四個(gè),其他表與這些表類似,在此不一一列舉。</p><p> 其中學(xué)術(shù)期刊涉及到的表有:期刊等級(jí)表、出版周期表、學(xué)科分類表、主管單位表。</p><p> 學(xué)校信息表涉及到的表有:主管單位表。</p><p> 科研管理部門表涉及到的表有:學(xué)校信息表。</p><p> 特殊人才表涉及到的表有:特殊人
59、才類型表、學(xué)校信息表。</p><p> 學(xué)科建設(shè)表涉及到的表有:學(xué)科表、年度表。</p><p> 然后根據(jù)表的結(jié)構(gòu)依次建立主外鍵的關(guān)系。</p><p> 4.3 存儲(chǔ)過程設(shè)計(jì)</p><p> 數(shù)據(jù)庫中的存儲(chǔ)過程對(duì)應(yīng)高級(jí)語言中的子程序,存儲(chǔ)過程的內(nèi)容是SQL語句,與高級(jí)語言的子程序一樣,存儲(chǔ)過程也有輸入輸出形參。</p&g
60、t;<p> 存儲(chǔ)過程在服務(wù)器運(yùn)行,存儲(chǔ)過程執(zhí)行一次后,就被編譯為二進(jìn)制代碼且駐留在高速緩沖存儲(chǔ)器中,在以后的操作中,只需從高速緩沖中調(diào)用已編譯好的二進(jìn)制代碼,提高了系統(tǒng)性能。</p><p> 在我所做的功能中涉及到了五十多個(gè)存儲(chǔ)過程(如圖4-3),這些存儲(chǔ)過程主要是對(duì)實(shí)體的增刪改查。</p><p><b> 圖4-3 存儲(chǔ)過程</b><
61、/p><p> 下面舉例說明其他幾個(gè)重要的存儲(chǔ)過程:</p><p> ?。?)增加學(xué)術(shù)期刊的存儲(chǔ)過程:這個(gè)存儲(chǔ)過程是將Magazne表里面的所有字段作為參數(shù),通過前臺(tái)的添加數(shù)據(jù),將記錄添加到數(shù)據(jù)庫中。</p><p> set ANSI_NULLS ON</p><p> set QUOTED_IDENTIFIER ON</p>
62、;<p><b> go</b></p><p> --項(xiàng)目名稱:科研管理系統(tǒng)</p><p><b> --說明:</b></p><p> --時(shí)間:-10-26 10:37:57</p><p> ALTER PROCEDURE [dbo].[UP_Magazine_A
63、DD]</p><p> @Id int output,</p><p> @magazine_name nvarchar(30),</p><p> @publishUnit nvarchar(30),</p><p> @magazine_grade int,</p><p><b> //……
64、</b></p><p><b> AS </b></p><p> INSERT INTO [Magazine](</p><p> [magazine_name],[publishUnit],[magazine_grade],[subject_id],[subjectName]</p><p>&l
65、t;b> )VALUES(</b></p><p> @magazine_name,@publishUnit,@magazine_grade,@subject_id,@subjectName</p><p> (2)顯示所有學(xué)術(shù)期刊的記錄:這個(gè)存儲(chǔ)過程主要是提取Magazine表里面的所有記錄。存儲(chǔ)過程主要代碼如下:</p><p> se
66、t ANSI_NULLS ON</p><p> set QUOTED_IDENTIFIER ON</p><p><b> go</b></p><p> --用途:查詢記錄信息</p><p> --項(xiàng)目名稱:科研管理系統(tǒng)</p><p> ALTER PROCEDURE [dbo]
67、.[UP_Magazine_GetList]</p><p><b> AS </b></p><p><b> SELECT </b></p><p> id,magazine_name,publishUnit,magazine_grade,subject_id,subjectName,chargerUnit,cr
68、eateDate,publishForm,publishCircle,paperSize,pageNum,magazine_charge,tel,address,email,CN_code,ISBN_code,web_site,code</p><p> FROM [Magazine]</p><p> set ANSI_NULLS ON</p><p> s
69、et QUOTED_IDENTIFIER ON</p><p> ?。?)修改數(shù)據(jù)庫里面的學(xué)術(shù)期刊的信息:這個(gè)存儲(chǔ)過程是根據(jù)Magazine里面的Id字段查找到該條記錄,然后再做修改,存儲(chǔ)過程代碼如下:</p><p> set ANSI_NULLS ON</p><p> set QUOTED_IDENTIFIER ON</p><p>
70、;<b> go</b></p><p> --用途:修改一條記錄</p><p> --項(xiàng)目名稱:科研管理系統(tǒng)</p><p> ALTER PROCEDURE [dbo].[UP_Magazine_Update]</p><p><b> @id int,</b></p>
71、<p> @magazine_name nvarchar(30),</p><p> @publishUnit nvarchar(30),</p><p><b> //……</b></p><p><b> AS </b></p><p> UPDATE [Magazine]
72、 SET </p><p> [magazine_name] = @magazine_name,[publishUnit] = @publishUnit </p><p> WHERE id=@id </p><p><b> //……</b></p><p> set ANSI_NULLS ON</p&g
73、t;<p> set QUOTED_IDENTIFIER ON</p><p> (5)編碼表Magazine_gradeCode表中的存儲(chǔ)過程:根據(jù)Id查詢符合條件的記錄,代碼如下:</p><p> set ANSI_NULLS ON</p><p> set QUOTED_IDENTIFIER ON</p><p>
74、;<b> go</b></p><p> --用途:得到實(shí)體對(duì)象的詳細(xì)信息</p><p> --項(xiàng)目名稱:科研管理系統(tǒng)</p><p> ALTER PROCEDURE [dbo].[UP_Magazine_grade_code_GetModel]</p><p><b> @id int<
75、/b></p><p><b> AS </b></p><p><b> SELECT </b></p><p> id,Magazine_grade_name</p><p> FROM [Magazine_grade_code]</p><p> WHE
76、RE id=@id </p><p> 獲得所有信息的記錄,代碼如下:</p><p> set ANSI_NULLS ON</p><p> set QUOTED_IDENTIFIER ON</p><p><b> go</b></p><p> --用途:查詢記錄信息</p&
77、gt;<p> --項(xiàng)目名稱:科研管理系統(tǒng)</p><p> ALTER PROCEDURE [dbo].[UP_Magazine_grade_code_GetList]</p><p><b> AS </b></p><p><b> SELECT </b></p><p>
78、; id,Magazine_grade_name</p><p> FROM [Magazine_grade_code]</p><p> set ANSI_NULLS ON</p><p> set QUOTED_IDENTIFIER ON</p><p> 由于本系統(tǒng)涉及的存儲(chǔ)過程太多,其他存儲(chǔ)過程均與以上相似,在此不一一列舉。
79、</p><p> 4.4 數(shù)據(jù)庫安全設(shè)計(jì)</p><p> 在本系統(tǒng)中,數(shù)據(jù)庫的安全主要通過數(shù)據(jù)庫的存取控制機(jī)制實(shí)現(xiàn)的。首先定義各類管理人員的操作權(quán)限即角色,然后依據(jù)用戶表將登錄分配為相應(yīng)的角色。由于人員的復(fù)雜性,角色分系統(tǒng)維護(hù)員、系管理員、校管理員、一般教師等幾種角色。在用戶登錄時(shí),提取出用戶的角色,不同的角色進(jìn)入系統(tǒng)后,主頁中的菜單是不同的,從而保證每種角色的用戶,只能看到的操作
80、到自己權(quán)限范圍內(nèi)的數(shù)據(jù),其他的數(shù)據(jù)根本看不到,從而基于角色,實(shí)現(xiàn)數(shù)據(jù)的存取控制的安全性。</p><p> 主外鍵約束的關(guān)系圖:</p><p> 項(xiàng)目所涉及的各表間關(guān)系圖:</p><p> 第五章 業(yè)務(wù)邏輯層設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 5.1 實(shí)體類設(shè)計(jì)</b></p><p&g
81、t; 實(shí)體類層,即使公用參數(shù)層,它為其他各層提供公用的參數(shù),可減少代碼的編寫量提供系統(tǒng)效率。每一張表都對(duì)應(yīng)了一個(gè)實(shí)體類,故實(shí)體類層共包括了:主管單位類、學(xué)術(shù)期刊類、期刊等級(jí)類、主管單位類、主管單位人員類、特殊人才類、特殊人才類型類、發(fā)行周期類、學(xué)校信息類、學(xué)科建設(shè)類、學(xué)科類、年度類。</p><p> 如實(shí)體類(Magazine)學(xué)術(shù)期刊信息類:</p><p> using Sys
82、tem;</p><p> namespace kygl.Model</p><p><b> {</b></p><p> /// <summary></p><p> /// 學(xué)術(shù)期刊類Magazine </p><p> /// </summary><
83、/p><p> [Serializable]</p><p> public class Magazine</p><p><b> {</b></p><p> public Magazine()</p><p><b> { }</b></p><
84、;p> #region Model</p><p> private int _id;</p><p> private string _magazine_name;</p><p> private string _publishunit; </p><p><b> //……</b></
85、p><p> private string _code;</p><p> /// <summary></p><p><b> /// 期刊編號(hào)</b></p><p> /// </summary></p><p> public int Id</p>
86、<p><b> {</b></p><p> set { _id = value; }</p><p> get { return _id; }</p><p><b> }</b></p><p> /// <summary></p><p
87、><b> /// 期刊名稱</b></p><p> /// </summary></p><p> public string Magazine_name</p><p><b> {</b></p><p> set { _magazine_name = value
88、; }</p><p> get { return _magazine_name; }</p><p><b> }</b></p><p><b> ……//</b></p><p> #endregion</p><p><b> }</b>
89、;</p><p><b> }</b></p><p> 其他類如此類似在此不一一列舉。</p><p> 5.2數(shù)據(jù)訪問層設(shè)計(jì)</p><p> 數(shù)據(jù)訪問層主要是系統(tǒng)采用的數(shù)據(jù)庫管理系統(tǒng)(DBMS),在整套企業(yè)級(jí)數(shù)據(jù)庫應(yīng)用系統(tǒng)中,它是最重要的一環(huán),其中主要的對(duì)象有表、視圖、存儲(chǔ)過程、函數(shù)、觸發(fā)器等,數(shù)據(jù)的許多
90、處理都應(yīng)該由數(shù)據(jù)庫本身去完成,例如將復(fù)雜的查詢或者數(shù)據(jù)寫入,都封裝為存儲(chǔ)過程和函數(shù),將數(shù)據(jù)寫入前后要進(jìn)行的附加操作用觸發(fā)器實(shí)現(xiàn)等等。對(duì)于表的創(chuàng)建一般應(yīng)以數(shù)據(jù)庫原理的第三范式規(guī)范來創(chuàng)建,允許一定的冗余。表及視圖的創(chuàng)建規(guī)范直接影響到代碼編寫的難易度。如學(xué)術(shù)期刊訪問類的期刊的添加和修改方法:</p><p> 添加學(xué)術(shù)期刊的代碼如下:</p><p> public int Add(kygl
91、.Model.Magazine model)</p><p><b> { </b></p><p> SqlParameter[] parameters = {</p><p> new SqlParameter("@magazine_name", SqlDbType.NVarChar,30),</p>
92、<p> new SqlParameter("@publishUnit", SqlDbType.NVarChar,30),</p><p> new SqlParameter("@magazine_grade", SqlDbType.Int,4),</p><p> new SqlParameter("@subject_i
93、d", SqlDbType.Int,4),</p><p><b> //……</b></p><p> parameters[0].Value = model.Magazine_name;</p><p> parameters[1].Value = model.PublishUnit;</p><p>
94、; parameters[2].Value = model.Magazine_grade_code.Id;//FK</p><p> parameters[3].Value = model.SubjectCode.SubjectId;</p><p> parameters[4].Value = model.SubjectCode.SubjectName;</p>&l
95、t;p><b> //……</b></p><p> return DBHelper.spExecuteCommand("UP_Magazine_ADD",parameters);</p><p><b> }</b></p><p> 學(xué)術(shù)期刊刪除代碼如下:根據(jù)人員編號(hào)刪除該條記錄。&l
96、t;/p><p> public int Delete(int id)</p><p><b> {</b></p><p> SqlParameter[] parameters = {</p><p> new SqlParameter("@id", SqlDbType.Int,4)};<
97、/p><p> parameters[0].Value = id;</p><p> return DBHelper.spExecuteCommand("UP_Magazine_Delete",parameters);</p><p><b> }</b></p><p> 5.3業(yè)務(wù)邏輯層設(shè)計(jì)&
98、lt;/p><p> 由于組件項(xiàng)目中每個(gè)類都設(shè)計(jì)有一個(gè)對(duì)后臺(tái)數(shù)據(jù)庫進(jìn)行連接的連接字符串成員,為了統(tǒng)一管理,把這個(gè)連接字符串成員提取到BLL類中。如學(xué)術(shù)期刊信息業(yè)務(wù)邏輯層,其主要代碼如下:</p><p> using System;</p><p><b> ……//</b></p><p> namespace k
99、ygl.BLL</p><p><b> {</b></p><p> /// <summary></p><p> /// 業(yè)務(wù)邏輯類Magazine 的摘要說明。</p><p> /// </summary></p><p> public class Ma
100、gazineManager</p><p><b> {</b></p><p> private readonly MagazineService dal=new MagazineService ();</p><p> public MagazineManager()</p><p><b> {}
101、</b></p><p> #region 成員方法</p><p> /// <summary></p><p> /// 增加一條數(shù)據(jù)</p><p> /// </summary></p><p> public int Add(kygl.Model.Magazin
102、e model)</p><p><b> {</b></p><p> return dal.Add(model);</p><p><b> }</b></p><p> /// <summary></p><p> /// 更新一條數(shù)據(jù)</p
103、><p> /// </summary></p><p> public int Update(kygl.Model.Magazine model)</p><p><b> {</b></p><p> return dal.Update(model);</p><p><
104、b> }</b></p><p> /// <summary></p><p> /// 刪除一條數(shù)據(jù)</p><p> /// </summary></p><p> public int Delete(int id)</p><p><b> {<
105、;/b></p><p> return dal.Delete(id);</p><p><b> }</b></p><p> /// <summary></p><p> /// 得到一個(gè)對(duì)象實(shí)體</p><p> /// </summary></
106、p><p> public kygl.Model.Magazine GetModel(int id)</p><p><b> {</b></p><p> return dal.GetModel(id);</p><p><b> }</b></p><p> ///
107、 <summary></p><p> /// 獲得數(shù)據(jù)列表</p><p> /// </summary></p><p> public IList<Magazine> GetList( )</p><p><b> {</b></p><p>
108、return dal.GetList();</p><p><b> }</b></p><p> #endregion 成員方法</p><p><b> }</b></p><p><b> }</b></p><p> 其他的業(yè)務(wù)邏輯類
109、與此類似,在此不一一列舉。</p><p> 第六章 界面表示層設(shè)計(jì)</p><p> 界面表示層主要是頁面接受用戶的請(qǐng)求,以及數(shù)據(jù)的返回,為客戶端提供應(yīng)用程序的訪問。</p><p> 6.1學(xué)術(shù)期刊的增、刪、改、查、設(shè)計(jì)</p><p> 學(xué)術(shù)期刊的主要包括增加學(xué)術(shù)期刊、刪除學(xué)術(shù)期刊、修改學(xué)術(shù)期刊,根據(jù)根據(jù)學(xué)術(shù)期刊編號(hào)查詢學(xué)術(shù)期刊
110、列表的時(shí)候鏈接到學(xué)術(shù)期刊詳情,如圖6-1。主要代碼為:</p><p> /// <summary></p><p> /// 光棒效果和刪除提示</p><p> /// </summary></p><p> /// <param name="sender"></par
111、am></p><p> /// <param name="e"></param></p><p> protected void gvMagazineList_RowDataBound(object sender, GridViewRowEventArgs e)</p><p><b> {<
112、/b></p><p> //指定當(dāng)綁定的為數(shù)據(jù)列時(shí)</p><p> if (e.Row.RowType == DataControlRowType.DataRow)</p><p><b> {</b></p><p> e.Row.Attributes.Add("onmouseover&qu
113、ot;, "currentcolor=this.style.backgroundColor;this.style.backgroundColor='#6699ff'");</p><p> e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=currentcolor&quo
114、t;);</p><p> //改行的第個(gè)單元格,增加刪除確認(rèn)</p><p> e.Row.Cells[8].Attributes.Add("onclick", "return confirm('確認(rèn)刪除嗎?')");</p><p><b> }</b></p>&
115、lt;p><b> }</b></p><p><b> //……</b></p><p> 圖6-1 人員詳細(xì)信息</p><p> 刪除學(xué)術(shù)期刊:是根據(jù)學(xué)術(shù)期刊編號(hào)查找該條記錄并刪除。主要代碼是:</p><p> //指定當(dāng)綁定的為數(shù)據(jù)列時(shí)</p><p&g
116、t; if (e.Row.RowType == DataControlRowType.DataRow)</p><p><b> {</b></p><p> e.Row.Attributes.Add("onmouseover", "currentcolor=this.style.backgroundColor;this.style
117、.backgroundColor='#6699ff'");</p><p> e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=currentcolor");</p><p> //改行的第個(gè)單元格,增加刪除確認(rèn)</p><p
118、> e.Row.Cells[8].Attributes.Add("onclick", "return confirm('確認(rèn)刪除嗎?')");</p><p><b> }</b></p><p> 利用這種方法做刪除特別注意的是要設(shè)置Link Button的Command Name的屬性為Delet
119、e,人性化設(shè)置是在刪除的時(shí)候應(yīng)做刪除提示,核心代碼為Link Button添加事件,即e.Row.Cells[8].Attributes.Add("onclick", "return confirm('確認(rèn)刪除嗎?')")如圖6-2。</p><p> 圖6-3 刪除學(xué)術(shù)期刊</p><p> 學(xué)術(shù)期刊信息詳細(xì)頁如圖6-4<
120、/p><p><b> 圖6-4</b></p><p> 期刊信息修改頁如圖6-5</p><p><b> 圖6-5</b></p><p> 第七章 系統(tǒng)測(cè)試,維護(hù)以及安全</p><p><b> 7.1系統(tǒng)測(cè)試</b></p>
121、<p> 7.1.2 系統(tǒng)運(yùn)行</p><p> 系統(tǒng)數(shù)據(jù)庫連接上之后就可以運(yùn)行了,在Microsoft Visual Studio中的工具欄中有一個(gè)綠三角圖標(biāo),點(diǎn)擊后就可以運(yùn)行系統(tǒng)了。如果出現(xiàn)有錯(cuò)誤,系統(tǒng)將提示錯(cuò)在什么位置,便于修改。</p><p><b> 7.1.1單元測(cè)試</b></p><p> 以后上所有功能
122、實(shí)現(xiàn)后,就要對(duì)系統(tǒng)進(jìn)行系統(tǒng)測(cè)試,測(cè)試主要是單元測(cè)試。</p><p> 測(cè)試一:在學(xué)術(shù)期刊添加頁添加學(xué)術(shù)期刊信息,按保存按鈕,跳轉(zhuǎn)到列表頁面,看看是否有該新增的記錄。</p><p> 測(cè)試二:刪除一條學(xué)術(shù)期刊信息,跳轉(zhuǎn)到列表頁面,看看是否有該條記錄。</p><p> 測(cè)試三:修改一條學(xué)術(shù)期刊信息,跳轉(zhuǎn)到詳情頁面,看看該條記錄是否修改過。</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 科研管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 高??蒲泄芾硐到y(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 科研信息管理系統(tǒng)本科畢業(yè)設(shè)計(jì)
- 高??蒲泄芾硐到y(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)畢業(yè)論文
- 計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文--高校師生科研管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)--畢業(yè)設(shè)計(jì)選題管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)論文 畢業(yè)設(shè)計(jì)管理系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--畢業(yè)設(shè)計(jì)選題管理系統(tǒng)
- 畢業(yè)設(shè)計(jì) 畢業(yè)設(shè)計(jì)(論文)管理系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)管理系統(tǒng)論文畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)說明書--科研人員信息管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)---畢業(yè)設(shè)計(jì)課題綜合管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)---畢業(yè)設(shè)計(jì)課題綜合管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)管理系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---畢業(yè)設(shè)計(jì)管理系統(tǒng)論文
- 畢業(yè)設(shè)計(jì)---畢業(yè)設(shè)計(jì)管理系統(tǒng)論文
- 畢業(yè)設(shè)計(jì)--畢業(yè)設(shè)計(jì)管理系統(tǒng)說明書
- 畢業(yè)設(shè)計(jì)--高校畢業(yè)設(shè)計(jì)管理系統(tǒng)論文
- 畢業(yè)設(shè)計(jì)--學(xué)生信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論