畢業(yè)設(shè)計-基于ASP.NET的學(xué)生檔案管理系統(tǒng)論文說明書
畢業(yè)設(shè)計報告(論文)報告(論文)題目:基于 ASP.NET的學(xué)生檔案管理系統(tǒng) 作者所在系部: 計算機(jī)科學(xué)與工程系 作者所在專業(yè): 作者所在班級: 作 者 姓 名 : 作 者 學(xué) 號 : 指導(dǎo)教師姓名: 完 成 時 間 : 教務(wù)處制摘 要學(xué)生檔案管理在高校信息管理中是一項重要性的工作,每個時期都有它的管理制度。雖然學(xué)生檔案管理面臨著信息化的沖擊與挑戰(zhàn),但是現(xiàn)在高校檔案管理信息化程度不高,仍然存在大量未解決的難題。因此,加快學(xué)生檔案管理實現(xiàn)信息化并開發(fā)出功能完善、便于使用的學(xué)生檔案管理系統(tǒng)是目前面臨的問題。目前高校學(xué)生的人數(shù)日益增多,對于學(xué)生檔案的管理也越來越復(fù)雜,要求也越來越高,越來越多的學(xué)校開始重視學(xué)生檔案的科學(xué)化管理。因此需要一個全面、詳細(xì)的學(xué)生檔案管理系統(tǒng),以便完成對學(xué)生檔案信息的管理。本畢業(yè)設(shè)計主要利用 ASP.net 技術(shù)和數(shù)據(jù)庫技術(shù),設(shè)計出一個學(xué)生檔案管理系統(tǒng)的方案,其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端用戶接口的設(shè)計兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性,安全性好的數(shù)據(jù)庫,而對于后者則要求用戶接口功能完備,容易使用。關(guān)鍵詞:學(xué)生檔案 信息化 ASP.net 技術(shù) 數(shù)據(jù)庫技術(shù)IAbstractStudent records management in the university information management is an importance of each period has its own management system. Although student records management is facing the impact and challenges of the information, but now the college archives management information level is not high, there are still many unresolved problems. Therefore, to accelerate student records management information technology and the development of a fully functional, easy-to-use student records management system is currently facing.The number of college students growing number of increasingly complex management of student files, and requirements are also increasing, more and more schools began to pay attention to the scientific management of student files. Therefore requires a comprehensive, detailed student records management system in order to complete the management of the student file information.This graduation ASP.net technology and database technology to design a program of student records management system, its development mainly includes two aspects of the establishment and maintenance of back-end database and front-end user interface design. For the former requirement to establish data consistency and integrity, security, database, while the latter requires that the user interface is fully functional, easy to use.Keywords:Student Files Information ASP. net technology Database technology目 錄摘 要 IAbstract .II第 1 章 緒論 .11.1 課題研究現(xiàn)狀分析 11.1.1 本領(lǐng)域內(nèi)已開展的研究工作 .11.1.2 已經(jīng)取得的研究成果 .21.2 選題的目的及意義 21.3 課題研究的主要內(nèi)容 2第 2 章 系統(tǒng)需求分析 .32.1 問題的提出 32.2 數(shù)據(jù)庫需求分析和性能需求 32.2.1 數(shù)據(jù)庫需求分析 .32.2.2 性能需求 .32.3 系統(tǒng)的設(shè)計目標(biāo) .4第 3 章 系統(tǒng)開發(fā)的技術(shù)背景 .63.1 DIV+CSS 前臺界面技術(shù) .63.2 ASP.NET 技術(shù) .63.3 數(shù)據(jù)庫技術(shù) 63.4 系統(tǒng)采用分層技術(shù) 73.5 B/S 結(jié)構(gòu) .73.6 系統(tǒng)的開發(fā)要求 8第 4 章 系統(tǒng)概要設(shè)計 .94.1 概要設(shè)計介紹 94.2 功能模塊劃分 104.3 數(shù)據(jù)庫設(shè)計 104.3.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計 .114.3.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計 .15第 5 章 詳細(xì)設(shè)計與實現(xiàn) .185.1 配置文件與公共類文件 185.1.1 Web.config 配置文件 .185.1.2 DBOperate.cs 公共類文件 195.2 用戶登錄模塊 205.3 修改登錄密碼 215.4 管理員登錄模塊 225.4.1 學(xué)院信息管理 .225.4.2 學(xué)生信息管理 .245.4.3 學(xué)生獎懲管理 .265.4.4 課程信息管理 .275.4.5 學(xué)生成績管理 .295.4.6 系部導(dǎo)航 .315.4.7 留言板 .325.4.8 打印學(xué)生檔案 .345.5 學(xué)生登錄模塊 355.5.1 查看學(xué)院信息 .355.5.2 查看個人信息 .365.5.3 查看獎懲情況 .375.5.4 查看課程信息 .375.5.5 查詢個人成績 .385.5.6 查看系部信息 .395.5.7 留言 .40第 6 章 系統(tǒng)測試與維護(hù) .416.1 創(chuàng)建和測試應(yīng)用程序 416.2 測試項目 416.3 程序改進(jìn) 416.4 測試方法 426.5 測試內(nèi)容 42結(jié) 論 .44致 謝 .45參考文獻(xiàn) .460 第 1 章 緒論隨著高校的不斷擴(kuò)招,學(xué)生人數(shù)越來越多,這就增加了學(xué)生檔案管理工作的負(fù)擔(dān)。傳統(tǒng)人工方式管理檔案不僅效率低,而且容易出錯,這就需要一個功能完善,操作簡單的學(xué)生檔案管理系統(tǒng)來代替人工方式,以提高高校學(xué)生檔案的管理效率,也為創(chuàng)建數(shù)字化校園做出一定貢獻(xiàn)。 1.1 課題研究現(xiàn)狀分析隨著我國高等教育的不斷發(fā)展以及數(shù)字化校園的不斷建設(shè),高校迫切需要提高教學(xué)質(zhì)量和管理效率,學(xué)生檔案管理實現(xiàn)信息化已成為一種趨勢,但目前高校學(xué)生檔案管理系統(tǒng)還存在一些問題,如:功能單一,系統(tǒng)孤立,缺乏綜合分析能力;接口不友好,不便于用戶使用。這就迫切需要開發(fā)出一個功能完備的學(xué)生檔案管理系統(tǒng)。國外的軟件開發(fā)技術(shù)相對于國內(nèi)比較成熟,在學(xué)生檔案管理系統(tǒng)的開發(fā)方面遵循可擴(kuò)展性和包容性,使得系統(tǒng)能接納已有的數(shù)據(jù)結(jié)構(gòu),在今后擴(kuò)展時有效地保護(hù)已有的資源,在需要變化時,能方便地調(diào)整結(jié)構(gòu),易于擴(kuò)充功能,升級方便,即滿足當(dāng)前的業(yè)務(wù)需求,又為今后的擴(kuò)展留有很大的空間。而在信息標(biāo)準(zhǔn)化和規(guī)范化的基礎(chǔ)上,對信息進(jìn)行合理的布局,使得相關(guān)人員可以按照各自的權(quán)限進(jìn)行信息查詢和維護(hù)。1.1.1 本領(lǐng)域內(nèi)已開展的研究工作1. 理論研究基礎(chǔ)隨著查詢要求和查詢信息系統(tǒng)水平的不斷提高,如何利用檔案管理系統(tǒng)查看每個學(xué)生的檔案信息,如何采用數(shù)據(jù)挖掘技術(shù)找出有價值的信息,并根據(jù)此信息進(jìn)行分析、比較、選擇等,獲得最有用的信息是一個發(fā)展趨勢。此外,學(xué)生檔案管理工作涉及到學(xué)校內(nèi)部的諸多部門,在學(xué)校內(nèi)部實現(xiàn)數(shù)據(jù)的交互與共享,形成全面綜合的查詢已經(jīng)是高校信息化查詢的研究熱點(diǎn)和重點(diǎn)。2. 技術(shù)層面的支持在技術(shù)上,學(xué)生檔案管理系統(tǒng)的開發(fā)技術(shù)日趨成熟。好的軟件開發(fā)工具給軟件的開發(fā)提供了方便,如 Microsoft Visual Studio 2010。此外,好的圖形工具也給用戶接口的設(shè)計提供了便利,像 Photoshop、Flash 等。而數(shù)據(jù)的存儲則采用 SQL SERVER 數(shù)據(jù)庫,提高了數(shù)據(jù)存取的速度。計算機(jī)和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展為學(xué)校的信息化建設(shè)提供了得天獨(dú)厚的技術(shù)條件;各個局域網(wǎng)、城域網(wǎng)的建成和完善為實現(xiàn)信息查詢的網(wǎng)絡(luò)化提供了硬件1 設(shè)施保障;這些都為高校學(xué)生檔案管理系統(tǒng)的開發(fā)、應(yīng)用提供了強(qiáng)有力的支持。1.1.2 已經(jīng)取得的研究成果目前學(xué)生檔案管理系統(tǒng)主要實現(xiàn)了對學(xué)生基本信息的管理、對學(xué)生學(xué)籍的管理、對學(xué)生獎懲情況的管理以及對學(xué)生考試成績的管理四個方面,功能比較完善。1.2 選題的目的及意義學(xué)生檔案管理系統(tǒng)用于高校學(xué)生檔案的管理工作,系 統(tǒng) 針 對 學(xué) 校 學(xué) 生 檔 案 信 息 的 特點(diǎn) 以 及 管 理 中 實 際 需 要 而 設(shè) 計 , 能 夠 有 效 地 實 現(xiàn) 學(xué) 生 檔 案 管 理 的 信 息 化 , 減 輕 管 理 人員 的 工 作 負(fù) 擔(dān) , 高 效 率 、 規(guī) 范 化 地 管 理 大 量 的 學(xué) 生 檔 案 信 息 , 并 避 免 人 為 操 作 的 錯 誤和 不 規(guī) 范 行 為 。此外,對于高校數(shù)字化和信息化建設(shè)起到推動作用,也將給傳統(tǒng)教學(xué)、科研活動帶來巨大的變化,同時也將給學(xué)校現(xiàn)行的體系與機(jī)制提出挑戰(zhàn),推動他們的變革。1.3 課題研究的主要內(nèi)容學(xué)生檔案管理系統(tǒng)是一個取代過去由人工管理的系統(tǒng),使用該系統(tǒng)的用戶有管理員和學(xué)生兩種,管理員可以對學(xué)生檔案進(jìn)行增加、刪除、查找、修改操作以及打印學(xué)生檔案,而學(xué)生只有查看自己檔案信息的權(quán)限和向管理員留言的權(quán)限。本系統(tǒng)采用采用三層開發(fā)技術(shù),用 DIV+CSS 進(jìn)行前臺接口的設(shè)計。本論文論述了一個基于 ASP.NET 的學(xué)生檔案管理系統(tǒng)的研究和實現(xiàn)的過程,論文從開發(fā)技術(shù)和環(huán)境談起,詳細(xì)介紹了 ASP.NET技術(shù)和數(shù)據(jù)庫技術(shù),并對該系統(tǒng)的實現(xiàn)過程做了完整介紹,包括需求分析、詳細(xì)設(shè)計、數(shù)據(jù)庫設(shè)計以及系統(tǒng)測試等方面。2 第 2 章 系統(tǒng)需求分析隨著科學(xué)技術(shù)的不斷提高,計算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識,它已進(jìn)入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。目前,學(xué)校學(xué)生檔案管理是教務(wù)管理中的一個極為重要的環(huán)節(jié),它是整個管理的核心和基礎(chǔ)。由于學(xué)校規(guī)模進(jìn)一步擴(kuò)大,學(xué)生人數(shù)逐年上升,學(xué)生檔案的管理也變得越來越復(fù)雜。面對如此繁雜的任務(wù)。如果讓個人去管理文檔,就會顯得費(fèi)時費(fèi)力。近年來隨著計算機(jī)的迅速發(fā)展,計算機(jī)已經(jīng)在社會各個領(lǐng)域顯示了它巨大的作用。毋庸置疑,切實有效地把計算機(jī)管理引入學(xué)校教務(wù)管理中,對于促進(jìn)學(xué)校管理制度,提高學(xué)校教學(xué)質(zhì)量與辦學(xué)水平有著顯著意義。2.1 問題的提出現(xiàn)在我國的一些院校中的信息管理效率還不是很高,這樣已經(jīng)不能適應(yīng)時代的發(fā)展,也浪費(fèi)了許多人力和物力。在信息時代,傳統(tǒng)的人工管理方法必然被以計算機(jī)為基礎(chǔ)的信息管理所取代。所以,學(xué)生檔案管理系統(tǒng)的設(shè)計與開發(fā)也是一個時代必經(jīng)的階段。本系統(tǒng)的設(shè)計采用 B/S結(jié)構(gòu),主要用于各高校對學(xué)生檔案的管理。2.2 數(shù)據(jù)庫需求分析和性能需求2.2.1 數(shù)據(jù)庫需求分析信息管理系統(tǒng)一般都要用數(shù)據(jù)庫來存儲信息,設(shè)計好數(shù)據(jù)庫的結(jié)構(gòu)有助于整個管理系統(tǒng)的設(shè)計與實現(xiàn),一個完整性和健壯性良好的數(shù)據(jù)庫是做出高質(zhì)量系統(tǒng)的關(guān)鍵所在,學(xué)生檔案管理系統(tǒng)也不例外。根據(jù)本系統(tǒng)的實際情況,需要用數(shù)據(jù)庫存儲學(xué)生的基本信息、學(xué)生獎懲信息、學(xué)生成績、院系信息、課程信息等,根據(jù)最終的設(shè)計,共需要 9張數(shù)據(jù)庫表,它們是學(xué)院信息表、系別表、專業(yè)表、學(xué)生信息表、系統(tǒng)用戶表、學(xué)生獎懲表、課程表、學(xué)生成績表和留言信息表。這些信息都是用 SQL SERVER 2005進(jìn)行存儲。為了滿足系統(tǒng)要求,需要將表與表相關(guān)聯(lián),設(shè)置主鍵、外鍵,創(chuàng)建視圖等,這樣便于對數(shù)據(jù)庫進(jìn)行操作,也保證了數(shù)據(jù)庫的完整性和健壯性。2.2.2 性能需求為了保證系統(tǒng)能夠長期、安全、穩(wěn)定、可靠、高效的運(yùn)行,學(xué)生檔案管理系統(tǒng)應(yīng)該滿足以下的性能需求:3 1. 系統(tǒng)處理的準(zhǔn)確性和及時性 在系統(tǒng)設(shè)計和開發(fā)過程中,要充分考慮系統(tǒng)當(dāng)前和將來可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時間能夠滿足企業(yè)對信息處理的需求。由于學(xué)生檔案涉及到學(xué)生在校期間的學(xué)習(xí)和生活情況,在進(jìn)行系統(tǒng)開發(fā)時必須保證系統(tǒng)處理的準(zhǔn)確性和及時性,這樣的學(xué)生檔案管理系統(tǒng)才具有實用價值,才能被高校認(rèn)可。2. 系統(tǒng)的響應(yīng)速度為了保證系統(tǒng)使用人員不會因為速度問題而影響工作效率,提高系統(tǒng)響應(yīng)時間是很有必要的,尤其是當(dāng)有多個用戶對系統(tǒng)進(jìn)行操作時,系統(tǒng)響應(yīng)時間的快慢就會顯得極為重要。學(xué)生檔案管理系統(tǒng)的用戶涉及到高校很多的學(xué)生,所以為了保證高校學(xué)生管理的效率,應(yīng)該提高系統(tǒng)的響應(yīng)速度。3. 系統(tǒng)的易用性和易維護(hù)性學(xué)生檔案管理系統(tǒng)的用戶有管理員和學(xué)生兩種,這就需要該系統(tǒng)有友好的接口設(shè)計,系統(tǒng)功能一目了然,以便于用戶使用該系統(tǒng),對檔案信息進(jìn)行增加、刪除、查詢、修改等操作。此外,系統(tǒng)的可維護(hù)性也是開發(fā)過程中應(yīng)該注意的問題,維護(hù)是產(chǎn)品交付以后對其在使用過程中出現(xiàn)的問題或缺陷進(jìn)行修改和完善的過程,為了后期便于維護(hù),在開發(fā)的過程中就應(yīng)該引起高度重視,在每個階段都要進(jìn)行測試,保證了軟件質(zhì)量。4. 系統(tǒng)的開放性和可擴(kuò)充性可擴(kuò)充性在學(xué)生檔案管理系統(tǒng)的開發(fā)過程中也是很重要的一部分。例如學(xué)生的檔案信息可能隨著時間的推移會有所增加,就要求系統(tǒng)能夠不斷完善和改進(jìn),系統(tǒng)設(shè)計要滿足高校不斷發(fā)展的要求,還要滿足因技術(shù)發(fā)展需要而實現(xiàn)低成本擴(kuò)展和升級的需求,這就需要系統(tǒng)提供更多的手段進(jìn)行功能的調(diào)整和擴(kuò)充。而要實現(xiàn)這一點(diǎn),就涉及到系統(tǒng)的開放性,系統(tǒng)設(shè)計應(yīng)采用開放技術(shù)、開放結(jié)構(gòu)、開放系統(tǒng)組件和開放用戶接口,以利于網(wǎng)絡(luò)的維護(hù)、擴(kuò)展升級及與外界信息的溝通。 2.3 系統(tǒng)的設(shè)計目標(biāo)本系統(tǒng)采用結(jié)構(gòu)化設(shè)計的方法來實現(xiàn)總體功能,將整個系統(tǒng)合理的劃分成各個功能模塊,通過對模塊的設(shè)計和模塊之間的關(guān)系來實現(xiàn)整個系統(tǒng)的功能。本系統(tǒng)主要分為兩大功能模塊:管理員登錄模塊和學(xué)生登錄模塊。4 管理員可以進(jìn)行如下操作:修改登錄密碼;對學(xué)院信息和每個系的信息進(jìn)行增加、刪除、查詢、修改;對學(xué)生基本信息進(jìn)行增加、刪除、查詢、修改;對學(xué)生在校期間所獲獎項以及懲罰情況進(jìn)行管理;對課程信息的增加、刪除、查詢、修改;學(xué)生每門課程所得成績的管理;打印學(xué)生檔案。學(xué)生可以進(jìn)行如下操作:修改登錄密碼;查詢學(xué)校所有院系信息以及各系情況;查詢個人基本信息;查詢自己在校期間所獲獎勵及懲罰情況;查詢所有課程信息和自己成績;向管理員提交修改申請。5 第 3 章 系統(tǒng)開發(fā)的技術(shù)背景本論文論述了一個基于 ASP.NET 的學(xué)生檔案管理系統(tǒng)的研究和實現(xiàn)的過程。本系統(tǒng)采用的是 B/S 結(jié)構(gòu),論文對 ASP.NET 技術(shù)做了一般介紹,還對 DIV+CSS 前臺接口技術(shù)和 SQL SERVER 數(shù)據(jù)庫的進(jìn)行了說明。本文從所用到的關(guān)鍵技術(shù)和開發(fā)平臺談起。3.1 DIV+CSS 前臺接口技術(shù)DIV+CSS 是一種網(wǎng)頁的布局方法,該方法實現(xiàn)了內(nèi)容與表現(xiàn)相分離,取代了傳統(tǒng)的HTML 網(wǎng)頁設(shè)計語言中的表格(table )定位。它用 div 盒模型結(jié)構(gòu)給各部分內(nèi)容劃分到不同的區(qū)塊,然后用 CSS 來定義盒模型的排列方式、內(nèi)外邊距、邊框、大小、位置等。采用該布局方式的優(yōu)點(diǎn)有:代碼簡潔,提高頁面瀏覽速度,采用 CSS+DIV 重構(gòu)的頁面容量要比 TABLE 編碼的頁面文件容量小得多,代碼更加簡潔,并且支持瀏覽器的向后兼容;表現(xiàn)和內(nèi)容相分離,將設(shè)計部分分離出來單獨(dú)放在一個.CSS 文件(樣式文件)中,HTML 檔中只存放文本信息;易于維護(hù)和改版,樣式的調(diào)整更加方便;提高搜索引擎對網(wǎng)頁的索引效率,用只包含結(jié)構(gòu)化內(nèi)容的 HTML 代替嵌套的卷標(biāo),搜索引擎將更有效地搜索到你的網(wǎng)頁內(nèi)容。現(xiàn)在新浪、網(wǎng)易等國內(nèi)門戶網(wǎng)站,MSN、YAHOO 等國際門戶網(wǎng)站,和主流的 WEB2.0 網(wǎng)站,均采用 DIV+CSS 的框架模式,更加印證了 DIV+CSS 是大勢所趨。3.2 ASP.NET 技術(shù)ASP.NET 是一個統(tǒng)一的 Web 開發(fā)模型,它包括使用盡可能少的代碼生成企業(yè)級Web 應(yīng)用程序所必需的各種服務(wù)。當(dāng)編寫 ASP.NET 應(yīng)用程序的代碼時,可以訪問.NET Framework 中的類。可以使用與公共語言運(yùn)行庫(CLR) 兼容的任何語言來編寫應(yīng)用程序的代碼,這些語言包括 C#、 JScript.NET 、Microsoft Visual Basic 和 J#等。ASP.NET 包含封裝公共 HTML 用戶接口元素(如文本框和下拉菜單)的控件集。但這些控件在 Web 服務(wù)器上運(yùn)行,并以 HTML 的形式將它們的用戶接口推送到瀏覽器。在服務(wù)器上,這些控件公開一個面向?qū)ο蟮木幊棠P?,?Web 開發(fā)人員提供了面向?qū)ο蟮木幊痰呢S富性。3.3 數(shù)據(jù)庫技術(shù)數(shù)據(jù)庫技術(shù)即 ADO.NET 技術(shù),它是 ADO 的改進(jìn)和完善版本。 ADO.NET 是一組用于和數(shù)據(jù)源進(jìn)行交互的面向?qū)ο箢悗?,通常情況下,數(shù)據(jù)源是數(shù)據(jù)庫,但它同樣也能夠是 XML 文件、Excel 表格或者文本文件。ADO.NET 允許和不同類型的數(shù)據(jù)源以及數(shù)據(jù)6 庫進(jìn)行交互。在 ASP.NET 中 ADO.NET 訪問數(shù)據(jù)庫分為二種。一種是其它任何類型的數(shù)據(jù)庫,另一種是 SQL Server 數(shù)據(jù)庫。學(xué)生檔案管理系統(tǒng)的后臺數(shù)據(jù)庫為 SQL Server 2005數(shù)據(jù)庫,用來訪問數(shù)據(jù)的五個主要的數(shù)據(jù)訪問對象有: SQLConnection、SqlCommand、SqlDataAdapter 、 DataSet 和 DataReader。采用數(shù)據(jù)庫技術(shù)對系統(tǒng)用到的數(shù)據(jù)進(jìn)行存儲,提高數(shù)據(jù)存儲的效率,也給系統(tǒng)調(diào)用數(shù)據(jù)提供了方便,這樣就會提高系統(tǒng)開發(fā)的效率。3.4 系統(tǒng)采用分層技術(shù)根據(jù) Web 應(yīng)用程序和 ASP. net 技術(shù)的特點(diǎn)和在實際過程中的不斷摸索,得到了一種基于 ASP. net 技術(shù)的三層 Web 應(yīng)用程序開發(fā)設(shè)計模型,這種模型把 Web 應(yīng)用程序劃分為三個基本的層次: 數(shù)據(jù)訪問層、業(yè)務(wù)邏輯層和用戶接口層。(1)資料訪問層:主要用來實現(xiàn)與數(shù)據(jù)庫的交互,即完成查詢、插入、刪除和修改數(shù)據(jù)庫中數(shù)據(jù)的功能。數(shù)據(jù)訪問層為業(yè)務(wù)邏輯層提供服務(wù),根據(jù)業(yè)務(wù)邏輯層的要求從數(shù)據(jù)庫中提取數(shù)據(jù)或者修改數(shù)據(jù)庫中的數(shù)據(jù)。(2)業(yè)務(wù)邏輯層 :業(yè)務(wù)邏輯層是整個分層模型的中間層,它是用戶接口層和業(yè)務(wù)邏輯層之間的橋梁和紐帶,這一層為用戶接口層提供功能調(diào)用,同時它又調(diào)用數(shù)據(jù)訪問層所提供的功能來訪問數(shù)據(jù)庫。(3)用戶接口層:用戶接口層用來實現(xiàn)在客戶瀏覽器中顯示的用戶接口。該層要以適當(dāng)?shù)男问斤@示由業(yè)務(wù)邏輯層動態(tài)傳送的數(shù)據(jù)信息要通過使用相應(yīng)的 HTML 標(biāo)記和 CSS模式來實現(xiàn)。同時,這一層還要負(fù)責(zé)獲得用戶錄入的數(shù)據(jù),完成對錄入數(shù)據(jù)的校驗,并將錄入數(shù)據(jù)傳送給業(yè)務(wù)邏輯層。采用分層模型來解決工程問題是一種非常優(yōu)秀的工程設(shè)計思路。學(xué)生檔案管理系統(tǒng)采用分層模型具有以下優(yōu)點(diǎn):每一層只實現(xiàn)相對獨(dú)立的功能,便于測試和維護(hù);通過分層將龐雜的大工程劃分為一組相對易于處理的小工程。降低問題的復(fù)雜程序;工程的靈活性好。3.5 B/S 結(jié)構(gòu)“B/S”是 指 Browser/Server(瀏 覽 器 /服 務(wù) 器 ), 即 客 戶 端 是 標(biāo) 準(zhǔn) 的 瀏 覽 器 , 服 務(wù)器 端 為 標(biāo) 準(zhǔn) 的 WEB 服 務(wù) 器 協(xié) 同 應(yīng) 用 服 務(wù) 器 響 應(yīng) 瀏 覽 器 的 請 求 。 B/S 結(jié) 構(gòu) 是 對 C/S結(jié) 構(gòu) 的 一 種 變 化 或 者 改 進(jìn) 的 結(jié) 構(gòu) , 是 隨 著 Internet 技 術(shù) 的 興 起 。 在 該 結(jié) 構(gòu) 下 , 通 過WWW 瀏 覽 器 來 實 現(xiàn) 用 戶 工 作 接 口 , 很 少 事 務(wù) 邏 輯 在 前 端 ( Browser) 實 現(xiàn) , 但 是 主要 事 務(wù) 邏 輯 在 服 務(wù) 器 端 ( Server) 實 現(xiàn) 。 這 樣 就 減 輕 了 系 統(tǒng) 升 級 與 維 護(hù) 的 成 本 和 工 作量 , 大 大 簡 化 了 客 戶 端 計 算 機(jī) 載 荷 , 降 低 了 用 戶 的 總 體 成 本 ( TCO) 。 以 目 前 的 技7 術(shù) 看 , 局 域 網(wǎng) 建 立 B/S 結(jié) 構(gòu) 的 網(wǎng) 絡(luò) 應(yīng) 用 , 并 通 過 Internet/Intranet 模 式 下 數(shù) 據(jù) 庫 應(yīng) 用 ,相 對 易 于 把 握 、 成 本 也 是 較 低 的 。 它 能 有 效 地 保 護(hù) 數(shù) 據(jù) 平 臺 和 管 理 訪 問 權(quán) 限 , 服 務(wù) 器數(shù) 據(jù) 庫 也 很 安 全 ; 它 是 一 次 性 到 位 的 開 發(fā) , 能 實 現(xiàn) 不 同 的 人 員 , 從 不 同 的 地 點(diǎn) , 以 不同 的 接 入 方 式 ( 比 如 LAN、 WAN、 Internet/Intranet 等 ) 訪 問 和 操 作 共 同 的 數(shù) 據(jù) 庫 。本 系 統(tǒng) 的 開 發(fā) 就 是 采 用 的 B/S 結(jié) 構(gòu) 。3.6 系統(tǒng)的開發(fā)要求基于 ASP.NET 的學(xué)生檔案管理系統(tǒng)的設(shè)計與實現(xiàn)對操作系統(tǒng)的要求如下:硬件要求:CPU:最低 Intel Pentium II 500 MHz。磁盤空間:250MB (完全安裝) ,155MB (快速安裝) 。內(nèi)存:512MB (最好 1GB 以上) 。顯示:1024*768,256 色軟件要求:操作系統(tǒng):Windows 2000 以上的操作系統(tǒng)。開發(fā)平臺:Visual Studio.NET 2010,Microsoft SQL Server 2005。8 第 4 章 系統(tǒng)概要設(shè)計如何解決系統(tǒng)實現(xiàn)的問題是本階段設(shè)計的基本目標(biāo),在本階段,需要設(shè)計軟件的結(jié)構(gòu),劃分出物理元素,完成對軟件的定義。之后就是對系統(tǒng)進(jìn)行總體設(shè)計,即根據(jù)對整個學(xué)生檔案管理系統(tǒng)的分析和組成該系統(tǒng)的模塊有那些,模塊與模塊之間的聯(lián)系以及每個模塊具體實現(xiàn)方法。要完成需求說明書中的所有功能是系統(tǒng)設(shè)計的目標(biāo),此外,還要盡量達(dá)到高效率、高移植性、高可靠性,并能夠使用戶便于操作。4.1 概要設(shè)計介紹系統(tǒng)概要設(shè)計首先要將整個系統(tǒng)模塊化,模塊化就是把比較復(fù)雜的問題分解成許多容易解決的小問題,按照各個突破的原則,將每個子模塊的問題一一解決,然后將各個子模塊通過模塊間的接口整合起來,形成一個功能完善的系統(tǒng)。采用模塊化的思想可以使系統(tǒng)設(shè)計的思路更加清晰,而且便于系統(tǒng)的測試和維護(hù),也提高了系統(tǒng)的可靠性、可移植性和可修改性,有助于軟件開發(fā)的組織管理。一個大型軟件可分別編寫不同的模塊。模塊化理論的幾個重要概念如下:(1)模塊獨(dú)立性。模塊獨(dú)立性指每個模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其它模塊的聯(lián)系最少,且接口簡單。內(nèi)聚和耦合是度量模塊的獨(dú)立程度有兩個標(biāo)準(zhǔn)。耦合是對一個軟件結(jié)構(gòu)內(nèi)各個模塊之間互連程度的度量。耦合強(qiáng)弱取決于模塊間接口的復(fù)雜程度,調(diào)用模塊的方式,以及通過接口的信息。內(nèi)聚標(biāo)志一個模塊內(nèi)各個元素彼此結(jié)合的緊密程度,它是信息隱蔽和局部化概念的自然擴(kuò)展。簡單地說,理想內(nèi)聚的模塊只做一件事情。在軟件的設(shè)計中應(yīng)追求高內(nèi)聚、低耦合。內(nèi)聚標(biāo)志一個模塊內(nèi)各個元素彼此結(jié)合的緊密程度,它是信息隱藏和局部化概念的自然擴(kuò)展。 (2)抽象。抽象是一種過程,它忽略了一些非關(guān)鍵性細(xì)節(jié),而把注意力集中在改善整體性能上。也就是人們常說的抓住重點(diǎn),生活中沒有抽象是枯燥無味的。同樣,計算機(jī)程序也是這樣。(3)信息隱蔽和局部化。信息隱蔽是指在設(shè)計和確定模塊時,應(yīng)使得一個模塊內(nèi)包含的信息對于不需要這些信息的模塊來說,是不能訪問的。信 息 隱 蔽 的 概 念 與 模 塊 的 獨(dú)立 性 直 接 相 關(guān) 。 在 面 向 對 象 方 法 中 , 信 息 隱 蔽 是 通 過 對 象 的 封 裝 性 來 實 現(xiàn) 的 。 局部化是指把一些關(guān)系密切的軟件元素物理的放得彼此靠近。局部化有助于實現(xiàn)信息隱蔽。(4)逐步求精的模塊化概念。將 現(xiàn) 實 問 題 經(jīng) 過 幾 次 抽 象 ( 細(xì) 化 ) 處 理 , 最 后 到 求解 域 中 只 是 一 些 簡 單 的 算 法 描 述 和 算 法 實 現(xiàn) 問 題 。 即 將 系 統(tǒng) 功 能 按 層 次 進(jìn) 行 分 解 , 每9 一 層 不 斷 將 功 能 細(xì) 化 , 到 最 后 一 層 都 是 功 能 單 一 、 簡 單 易 實 現(xiàn) 的 模 塊 。 求 解 過 程 可 以劃 分 為 若 干 個 階 段 , 在 不 同 階 段 采 用 不 同 的 工 具 來 描 述 問 題 。 這 樣 簡化了軟件設(shè)計和實施,提高了軟件的可理解性和可測試性,并使得軟件更容易維護(hù)。4.2 功能模塊劃分(1)管理員登錄模塊:該模塊實現(xiàn)管理員對自己登錄密碼的修改、對院系信息的查改操作、對學(xué)生獎懲信息的管理、對學(xué)生基本信息的管理、對學(xué)生成績的管理、對所有課程的管理、對學(xué)生留言的查看以及打印學(xué)生檔案。(2)學(xué)生登錄模塊:該模塊實現(xiàn)學(xué)生對院系信息的瀏覽、查看自己的基本信息、查看自己的獎懲情況、查看自己的成績、瀏覽所有的課程信息以及向管理員留言。系統(tǒng)模塊圖如圖 4-1 所示:圖 4-1 系統(tǒng)模塊圖4.3 數(shù)據(jù)庫設(shè)計學(xué)生檔案管理系統(tǒng)需要存儲的數(shù)據(jù)比較多,為了方便管理、易于維護(hù),我們采用Sql Server 數(shù)據(jù)庫系統(tǒng)對數(shù)據(jù)進(jìn)行存儲,這樣不僅提高了數(shù)據(jù)管理效率,也能夠正確反映用戶實現(xiàn)環(huán)境,能被現(xiàn)行系統(tǒng)接受。數(shù)據(jù)模型是指數(shù)據(jù)庫中記錄與記錄之間聯(lián)系的數(shù)據(jù)結(jié)構(gòu)形成的。不同的數(shù)據(jù)管理系統(tǒng)有不同的數(shù)據(jù)模型,數(shù)據(jù)庫設(shè)計的核心問題是設(shè)計好的數(shù)據(jù)模型。管理信息系統(tǒng)的設(shè)計并不是以數(shù)據(jù)庫為核心的數(shù)據(jù)庫應(yīng)用設(shè)計,本系統(tǒng)的數(shù)據(jù)庫設(shè)計盡量滿足 3NF(第三范式)的要求。滿足 3NF 首先要滿足第 1NF 和 2NF,簡而言之第三范式就是屬性不依學(xué)生檔案管理系統(tǒng)管理員登錄模塊學(xué)生登錄模塊查詢系部信息查詢個人信息查詢獎懲信息學(xué)院信息管理查詢課程信息系部信息管理學(xué)生信息管理學(xué)生成績管理查詢學(xué)院信息課程信息管理修改登錄密碼獎懲信息管理查詢個人成績修改登錄密碼10 賴于其它非主屬性,例如本系統(tǒng)中的系別表有系的編號、系名稱和系簡介三個屬性,那么學(xué)生信息表列出所在系的編號后就不能載列出系名稱和系簡介了,這樣避免了資料的大量冗余。本系統(tǒng)的數(shù)據(jù)庫設(shè)計以提高系統(tǒng)運(yùn)行效率為前提,設(shè)計采用關(guān)系型數(shù)據(jù)庫,使用的數(shù)據(jù)庫開發(fā)工具是 SQL SERVER 2005,。采用關(guān)系型數(shù)據(jù)庫,似的對數(shù)據(jù)的增加、刪除、編輯、統(tǒng)計變得更加靈活,其中的排序和索引功能,對數(shù)據(jù)快速定位,查詢提供了有利條件。4.3.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計 在開發(fā)學(xué)生檔案管理系統(tǒng)之前,首先考慮的是如何對現(xiàn)實世界進(jìn)行抽象,這就需要采用數(shù)據(jù)模型來對數(shù)據(jù)庫進(jìn)行設(shè)計。目前廣泛使用的數(shù)據(jù)模型可分為兩種類型,一種是直接面向數(shù)據(jù)庫邏輯結(jié)構(gòu)的“結(jié)構(gòu)數(shù)據(jù)模型”;另一種是獨(dú)立于計算機(jī)系統(tǒng)的“概念數(shù)據(jù)模型”,如“實體聯(lián)系模型”。在本系統(tǒng)中我采用“實體關(guān)系模型”(E-R 模型)來描述數(shù)據(jù)庫的結(jié)構(gòu)與語義,以對現(xiàn)實世界進(jìn)行第一次抽象,E-R 模型直接從現(xiàn)實世界抽象出實體類型及實體間聯(lián)系,然后用 E-R 圖來表示數(shù)據(jù)模型。使用 E-R 圖可以直觀表示概念模型,E-R 圖有三個基本成分:(1)橢圓形框,表示實體的屬性。(2)矩形框,表示實體類型(考慮問題的對象)。(3)菱形框,表示聯(lián)系類型(實體間的聯(lián)系)。實體和屬性的定義如下:用戶登錄表(用戶名,登錄密碼,用戶權(quán)限)學(xué)生信息表(學(xué)號,姓名,性別,年齡,班級,專業(yè),身份證號,政治面貌,入學(xué)年份,照片,籍貫,學(xué)籍狀態(tài),家庭住址,學(xué)制,學(xué)歷,出生年月)課程信息表(課程編號,課程名稱,開設(shè)學(xué)院,課程性質(zhì),學(xué)分)系別表(編號,系名稱,系簡介)專業(yè)表(編號,專業(yè)名稱,所屬系別)學(xué)院信息表(編號,學(xué)院簡介,電話號碼,傳真,郵編,地址,更新時間)獎懲信息表(編號,獎懲內(nèi)容,獎懲標(biāo)識,獎懲時間,獎懲說明,學(xué)號)學(xué)生成績表(學(xué)號,課程名稱,學(xué)年,學(xué)期,平時成績,期末成績,總評成績)留言信息表(編號,學(xué)號,留言內(nèi)容,留言時間)(1)用戶登錄信息實體屬性如圖 4-2 所示:用戶登錄信息登錄密碼用戶名用戶權(quán)限11 圖 4-2 用戶登錄信息實體屬性圖(2)學(xué)生基本信息實體屬性如圖 4-3 所示。圖 4-3 學(xué)生信息實體屬性圖(3)課程信息實體屬性如圖 4-4 所示。圖 4-4 課程信息實體屬性圖(4)各系實體屬性如圖 4-5 所示。圖 4-5 各系實體屬性圖(5)專業(yè)實體屬性如圖 4-6 所示。系信息系信息編號編號系名稱系名稱系簡介系簡介學(xué)生信息學(xué)號 年齡性別班級姓名 專業(yè)學(xué)歷學(xué)制家庭住址學(xué)籍狀態(tài) 籍貫照片 入學(xué)年份政治面貌身份證號 出生年月課程信息課程編號 學(xué)分課程名稱 課程性質(zhì)開設(shè)學(xué)院12 圖 4-6 專業(yè)實體屬性圖(6)學(xué)院信息實體屬性如圖 4-7 所示。圖 4-7 學(xué)院信息實體屬性圖(7)獎懲信息實體屬性如圖 4-8 所示。圖 4-8 獎懲信息實體屬性圖(8)學(xué)生成績實體屬性如圖 4-9 所示。獎懲信息獎懲信息獎懲內(nèi)容獎懲內(nèi)容獎懲標(biāo)識獎懲標(biāo)識獎懲時間獎懲時間獎懲說明獎懲說明編號編號學(xué)號學(xué)號學(xué)院信息學(xué)院信息編號編號學(xué)院簡介學(xué)院簡介站名站名電話號碼電話號碼地址地址郵編郵編傳真?zhèn)髡娓聲r間更新時間專業(yè)信息編號 專業(yè)名稱所屬系別13 圖 4-9 學(xué)生成績實體屬性圖(9)留言信息實體屬性如圖 4-10 所示。 圖 4-10 留言信息實體屬性圖(10)本系統(tǒng)實體間的映像關(guān)系如圖 4-11 所示。圖 4-11 實體映像關(guān)系圖留言信息留言信息編號編號留言時間留言時間學(xué)號學(xué)號留言內(nèi)容留言內(nèi)容學(xué)生成績學(xué)生成績學(xué)號學(xué)號課程名稱課程名稱學(xué)年學(xué)年學(xué)期學(xué)期總評成績總評成績期末成績期末成績平時成績平時成績屬于評定選課存在屬于學(xué)生 班級N 1系 1N課程 成績獎懲記錄N1NM1114 4.3.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計學(xué)生檔案管理系統(tǒng)采用 SQL Server 2005 進(jìn)行數(shù)據(jù)庫設(shè)計。本系統(tǒng)創(chuàng)建的 SQL 數(shù)據(jù)庫名稱為 StudentDangan,此數(shù)據(jù)庫包含用戶登錄表、學(xué)生信息表、課程信息表、系別表、專業(yè)表、學(xué)院信息表、獎懲信息表、學(xué)生成績表、留言信息表 9 個表。(1)用戶登錄表存放登錄系統(tǒng)所需要的用戶名、密碼及用戶權(quán)限。用戶登錄表各字段功能定義如表 4-1 所示。表 4-1 用戶登錄表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義username nchar(20) 否 是 用戶名userpwd nchar(20) 否 否 密碼authority nchar(10) 否 否 權(quán)限(2)學(xué)生信息表存放學(xué)生的基本信息。學(xué)生信息表各字段功能定義如表 4-2 所示。表 4-2 學(xué)生信息表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義sno nchar(20) 否 是 學(xué)號sname nchar(10) 否 否 姓名ssex nchar(1) 否 否 性別sage int 是 否 年齡sclass nchar(10) 否 否 班級szhuanye nchar(20) 是 否 專業(yè)sID nchar(20) 是 否 身份證號smianmao nchar(10) 是 否 政治面貌sentertime nchar(10) 是 否 入學(xué)年份sphoto nchar(100 ) 是 否 照片spro nchar(10) 是 否 籍貫sxueji nchar(2) 是 否 學(xué)籍狀態(tài)saddress nchar(50) 是 否 家庭住址sxuezhi nchar(2) 是 否 學(xué)制sxueli nchar(10) 是 否 學(xué)歷sbirthday nchar(20) 是 否 出生年月(3)課程信息表存放所有的課程信息。課程信息表各字段功能定義如表 4-3 所示。15 表 4-3 課程信息表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義cno int 否 是 課程編號cname nchar(20) 否 否 課程名稱cdepart int 是 否 開設(shè)學(xué)院cxingzhi nchar(10) 是 否 課程性質(zhì)cxuefen int 是 否 學(xué)分(4)系別表存放各系簡介。系別表各字段功能定義如表 4-4所示。表 4-4 系別表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義d_id int 否 是 編號d_name nchar(20) 否 否 系名稱d_jianjie text 是 否 系簡介(5)專業(yè)表存放每個專業(yè)的信息。專業(yè)表各字段功能定義如表 4-5所示。表 4-5 專業(yè)表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義z_id int 否 是 編號z_name nchar(20) 否 否 專業(yè)名稱z_depart int 否 否 所屬系別(6)學(xué)院信息表存放學(xué)校的聯(lián)系方式及簡介。學(xué)院信息表各字段功能定義如表 4-6 所示。表 4-6 學(xué)院信息表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義s_id int 否 是 編號s_neirong text 否 否 學(xué)院簡介s_phone nchar(20) 是 否 電話號碼s_fax nchar(20) 是 否 傳真s_youbian nchar(10) 是 否 郵編s_address nchar(50) 是 否 地址s_time nchar(20) 是 否 更新時間16 (7)獎懲信息表存放學(xué)生的獎懲情況。獎懲信息表各字段功能定義如表 4-7 所示。表 4-7 獎懲信息表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義jc_id int 否 是 編號jc_neirong text 否 否 獎懲內(nèi)容jc_biaoshi int 否 否 獎懲標(biāo)識jc_time nchar(20) 否 否 獎懲時間jc_shuoming text 是 否 獎懲說明jc_stu nchar(20) 否 否 學(xué)號(8)學(xué)生成績表中存放學(xué)生在校期間的各科成績信息。學(xué)生成績表各字段功能定義如表 4-8 所示。表 4-8 學(xué)生成績表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義sno nchar(20) 否 是 學(xué)號cname nchar(20) 否 是 課程名稱syear nchar(20) 否 否 學(xué)年sxueqi int 否 否 學(xué)期spingshi Int 否 否 平時成績sqimo int 否 否 期末成績score nvarchar(20 ) 否 否 總評成績(9)留言信息表中存放學(xué)生給管理員的留言信息。留言信息表各字段功能定義如表 4-9 所示。表 4-9 留言信息表字段名 數(shù)據(jù)類型 允許為空 是否主鍵 字段含義m_id int 否 是 編號m_sno nchar(20) 否 否 學(xué)號m_neirong text 否 否 留言內(nèi)容m_time nchar(20) 否 否 留言時間17 第 5 章 詳細(xì)設(shè)計與實現(xiàn)本系統(tǒng)的用戶有管理員和學(xué)生兩種,雖然兩種用戶都可以登錄本系統(tǒng),但登錄系統(tǒng)以后能夠進(jìn)行的操作是不同的,即兩種用戶對系統(tǒng)的使用權(quán)限不同,當(dāng)然,管理員的權(quán)限要高于普通學(xué)生。管理員登錄系統(tǒng)以后,不僅可以瀏覽和查詢所有信息,而且可以對院系信息、學(xué)生信息、課程信息、獎懲信息、成績信息等進(jìn)行查詢、增加、刪除、修改操作以及打印學(xué)生檔案,而普通學(xué)生登錄進(jìn)該系統(tǒng)以后,只能對個人檔案信息和院系信息進(jìn)行瀏覽和查詢。管理員和學(xué)生處進(jìn)行以上操作外,學(xué)生還可以給管理員留言,讓管理員改正自己發(fā)現(xiàn)的錯誤檔案信息,管理員課以查看學(xué)生的留言,根據(jù)留言對錯誤信息進(jìn)行改正。該系統(tǒng)是用 ASP.NET 中三層開發(fā)技術(shù)進(jìn)行開發(fā)的,它們是數(shù)據(jù)層(DAL )、業(yè)務(wù)層(BLL )和表示層。數(shù)據(jù)層的功能是對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行操作,將所有對數(shù)據(jù)庫進(jìn)行操作的方法都寫到這一層;表示層就是對前臺接口進(jìn)行操作;業(yè)務(wù)層是聯(lián)系資料層和表示層的紐帶,表示層通過調(diào)用業(yè)務(wù)層的方法實現(xiàn)對數(shù)據(jù)庫中數(shù)據(jù)的存取。5.1 配置文件與公共類文件5.1.1 Web.config 配置文件在開發(fā)學(xué)生檔案管理系統(tǒng)的過程中,需要頻繁的調(diào)用數(shù)據(jù)庫中的數(shù)據(jù),這就有可能造成代碼的冗余,延長了系統(tǒng)的響應(yīng)時間。所以,將連接字符串寫到 web.config 檔中,這就有效的避免了由于頻繁連接數(shù)據(jù)庫,造成代碼冗余的缺陷。Web.config 文件中數(shù)據(jù)庫的連接代碼如下:5.1.2 DBOperate.cs 公共類文件在系統(tǒng)開發(fā)過程中需要頻繁對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行增、刪、查、該操作,為了避免代碼冗余,提高系統(tǒng)性能,省去開發(fā)工程中不必要的工作,我將對數(shù)據(jù)庫進(jìn)行增、刪、查、該操作用到的代碼封裝到BOperate.cs檔中,每次用到的時候,只需要調(diào)用公共類中的函數(shù)即可,這樣不僅提高了系統(tǒng)開發(fā)的效率,也縮短了系統(tǒng)的響應(yīng)時間。DBOperate.cs檔部分內(nèi)容如下:public class DBOperate public DBOperate()/獲取連接數(shù)據(jù)庫的連接字符串public string db = ConfigurationManager.ConnectionStrings“constr“.ToString();/對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行插入、刪除和修改操作,返回改變的行數(shù)public int ExecuteNonQuery(string sql, SqlParameter s) try SqlConnection conn = new SqlConnection(db);conn.Open();SqlCommand cmd = new SqlCommand(sql, conn);cmd.Parameters.AddRange(s);return cmd.ExecuteNonQuery(); catch (Exception e)throw e;/帶參數(shù)的查詢數(shù)據(jù)庫中的數(shù)據(jù),返回DataSet 對象public DataSet ExecuteDataset(string sql, SqlParameter s)try SqlConnection conn = new SqlConnection(db);SqlCommand cmd = new SqlCommand(sql, conn);cmd.Parameters.AddRange(s);SqlDataAdapter da = new SqlDataAdapter(cmd);DataSet ds = new DataSet();da.Fill(ds, “ss“);19 return ds; catch (SqlException ex) throw ex; catch (Exception ex) throw ex; /無參數(shù)的查詢數(shù)據(jù)庫中的數(shù)據(jù),返回DataSet 對象public DataSet ExecuteDataset(string sql)try SqlConnection conn = new SqlConnection(db);SqlCommand cmd = new SqlCommand(sql, conn);SqlDataAdapter da = new SqlDataAdapter(cmd);DataSet ds = new DataSet();da.Fill(ds, “ss“);return ds; catch (SqlException ex) throw ex; catch (Exception ex) throw ex; 5.2 用戶登錄模塊該模塊是用戶進(jìn)入學(xué)生檔案管理系統(tǒng)的入口,當(dāng)用戶權(quán)限為admin時,輸入用戶名、密碼和驗證碼以后,單擊登錄按鈕進(jìn)入管理員操作接口,如果用戶權(quán)限為student時,則進(jìn)入學(xué)生操作接口。用戶登錄接口如圖5-1所示。圖 5-1 用戶登錄接口實現(xiàn)的主要代碼如下:protected void ImageButton1_Click(object sender, ImageClickEventArgs e) string uname = TextBox1.Text.Trim();20 string upwd = TextBox2.Text.Trim();if (!TextBox3.Text.ToLower().Equals(StringFactory.GetCode()ClientScript.RegisterStartupScript(this.GetType(), “MyScript“, “alert('驗證碼錯誤);location.href='InEnter.aspx'“, true);elseuser user = new user();List list = BLL.userland.Getusers(uname, upwd);if (list.Count != 0)Session“username“ = list0.username.ToString();Session“authority“ = list0.authority.ToString();Response.Redirect(“/管理員首頁.aspx“);elseClientScript.RegisterStartupScript(this.GetType(), “MyScript“, “alert('用戶名或密碼錯誤,請新輸入!);location.href='InEnter.aspx'“, true);5.3 修改登錄密碼管理員和學(xué)生對登錄密碼的修改接口一樣,操作相同。修改密碼接口如圖5-2所示。圖5-2 修改密碼接口21 實現(xiàn)的主要代碼如下:protected void Button1_Click(object sender, EventArgs e)Label1.Visible = false;string ss = BLL.userland.getpwd(name).Trim();if (txtoldpwd.Text.ToString().Trim()!=ss)Label1.Visible = true;Label1.Text = 輸入的舊密碼不正確“;elseint i = BLL.userland.updatepwd(name, txtnewpwd1.Text.Trim();if (i 0)ClientScript. RegisterStartupScript(this.GetType(), “MyScript“, “alert('修改成功!');location.href='updateadminpwd.aspx'“, true);elseClientScript.RegisterStartupScript(thisGetType(), “MyScript“, “alert('修改失敗!');location.href='updateadminpwd.aspx'“, true);5.4 管理員登錄模塊該模塊是管理員登錄學(xué)生檔案管理系統(tǒng)以后,可以進(jìn)行的操作,包括對學(xué)院信息和系部信息的查看和修改,對學(xué)生信息、學(xué)生獎懲信息、課程信息、學(xué)生成績的增加、刪除、查詢、修改,查看學(xué)生留言以及打印學(xué)生檔案。5.4.1 學(xué)院信息管理管理員對學(xué)院信息進(jìn)行管理,包括對學(xué)院介紹、學(xué)院聯(lián)系方式(電話、郵編、傳真、22 地址等)查詢和修改,查看學(xué)院信息的接口圖5-3所示。圖5-3 管理員查看學(xué)員信息管理員單擊“修改學(xué)院信息”按鈕,跳轉(zhuǎn)到修改學(xué)院信息的接口,如圖5-4所示。圖5-4 修改學(xué)院信息23 實現(xiàn)的主要代碼如下:protected void Button1_Click(object sender, EventArgs e)schoolinfo sf = new schoolinfo();sf.s_id = Request.QueryString“id“.ToString();sf.s_address = txtaddress.Text.ToString();sf.s_fax = txtfax.Text.ToString();sf.s_neirong = txtjianjie.Text.ToString();sf.s_phone = txtphone.Text.ToString();sf.s_youbian = txtyoubian.Text.ToString();sf.s_time = StringFactory.getTime();int i=BLL.school.updateschool(sf);if (i 0)ClientScript.RegisterStartupScript(this.GetType(), “MyScript“, “alert('修改成功!'); location.href='管理員首頁.aspx'“, true);else ClientScript.RegisterStartupScript(this.GetType(), “MyScript“, “alert('修改失??!'); location.href='UpdateSchoolinfo.aspx'“, true); 5.4.2 學(xué)生信息管理管理員對學(xué)生信息的管理包括按條件對學(xué)生信息的查詢、添加學(xué)生信息、修改學(xué)生信息、刪除學(xué)生信息,刪除學(xué)生信息可以批量刪除。添加學(xué)生信息的時候,也會將該學(xué)生對應(yīng)的登錄用戶名、密碼及登錄權(quán)限插入到用戶登錄信息表中,用戶名是學(xué)生的學(xué)號,密碼默認(rèn)“666666” ,登錄權(quán)限為“student” 。刪除學(xué)生信息的同時也會將該學(xué)生的獎懲情況和成績信息一并刪除。此外,管理員還可以重置學(xué)生的登錄密碼,避免學(xué)生忘記登錄密碼而無法進(jìn)入該系統(tǒng),重置的密碼統(tǒng)一為“666666” 。學(xué)生信息管理接口如圖5-5所示。24 圖5-5 學(xué)生信息管理實現(xiàn)的主要代碼如下:/綁定學(xué)生信息public void stuBind(Boolean bol)string sname = TextBox1.Text.Trim();string sno = TextBox2.Text.Trim();string sclass = TextBox3.Text.Trim();string dep = DropDownList1.SelectedItem.Text.ToString();DataSet ds = BLL.studentinfo.getstuinfo(sname,sno,sclass,dep);GridView1.DataSource = ds;If (bol = true)GridView1.PageIndex = 0; GridView1.DataBind();/密碼重置主要代碼protected void GridView1_RowCommand(object sender,GridViewCommandEventArgs e)if (e.CommandName = “updatepwd“)string sno = e.CommandArgument.ToString();string pwd = “666666“;int i=BLL.userland.updatepwd(sno, pwd);