學生成績管理系統(tǒng)畢業(yè)論文2
《學生成績管理系統(tǒng)畢業(yè)論文2》由會員分享,可在線閱讀,更多相關《學生成績管理系統(tǒng)畢業(yè)論文2(31頁珍藏版)》請在裝配圖網上搜索。
1、 1 緒論 隨著現(xiàn)代科技的迅猛發(fā)展,在時代的要求下,必須開發(fā)出一個系統(tǒng)來方便學校管理學生的成績,這就是所謂的學生成績管理系統(tǒng)。此系統(tǒng)可以在網絡平臺上方便得管理學生的成績,既節(jié)省了人力的同時也節(jié)省了物力,使得學生的成績在互聯(lián)網下順利的管理。在使用JAVA技術情況下,利用其交互性、動態(tài)性、跨平臺性等特點,成績管理系統(tǒng)便深刻地影響到了教育教學領域。 此系統(tǒng)主要是對學生有關的成績進行操作,將成績上傳到網絡平臺上,有助于教師對成績的管理。其中包括增加、刪除、修改等功能,更是方便了教師對學生成績的操作。方便快捷的管理方式一直是我們所追求的,如今的成績管理系統(tǒng)更是應人們對高效率的管理方式的向往
2、與追求,擺脫了時間、空間、地理位置等的限制,完全符合時代的需求。 1.1 開發(fā)背景 每個學校都需要在學期末進行考試成績的統(tǒng)計分析工作,而這些工作都必須在結束后近一個星期的時間內完成。大量的成績數(shù)據的統(tǒng)計分析工作如果只靠人工來完成,費時費力,還容易出錯。隨著計算機技術的飛速發(fā)展,計算機在日程管理應用中迅速普及,利用計算機進行學術成績管理勢在必行。因此需開發(fā)出一個能滿足學校進行成績的錄入、統(tǒng)計、查詢、報表和打印等需求的、功能完善、安全可靠、迅速簡便的成績管理信息系統(tǒng)。 1.2 研究意義 現(xiàn)在很多高校都面臨著教學方面的改革,尤其是在計算機網絡技術和數(shù)據庫等方面的發(fā)展,更加促進了教學
3、向著規(guī)范化轉變。我國是教育大國,隨著接受教育的人日漸增多,有關學生的信息也變得錯綜復雜,如何管理這么龐大的數(shù)據已經變成一個現(xiàn)實的問題。于是提出了學生成績管理系統(tǒng)的開發(fā)與運用,學生成績管理系統(tǒng)不僅可以解決以上錯綜復雜的信息外,更能節(jié)省人力、物力,成為教育發(fā)展不可缺少的一個重要環(huán)節(jié)。學生成績管理系統(tǒng)不僅能夠提高工作效率和準確度,而且其中有一個重要的原因就是節(jié)省時間,同時學生在此系統(tǒng)的運用下也能第一時間能夠知道自己的考試成績。學生成績管理系統(tǒng)不僅用于各個大中專院校,而且如今的民辦院校也同樣用此系統(tǒng),提高了民辦教育在以后市場的競爭力。 2 開發(fā)工具 2.1 JAVA語言 JAVA是一種簡單的
4、,具有面向對象的,分布式的,解釋,強大的安全性,中立,便攜性能非常好的多線程和動態(tài)語言的結構等優(yōu)點。1995年SUN推出JAVA語言中,很多的目光都被這個不一般的語言吸引住。 JAVA語言實際上是第一個出生于1991年,剛開始被稱為OAK語言,SUN公司設計的一些消費性電子產品涉及到這個通用環(huán)境。他們原來的目的只是為了開發(fā)一種獨立于平臺的軟件技術和網絡,而且在網絡出現(xiàn)之前,OAK可以說是一文不聞,甚至曾經一度差點消失。但是,互聯(lián)網的出現(xiàn)改變了OAK的命運。 之前的有關JAVA?;ヂ?lián)網上的信息內容都是無聊死板的HTML文檔。那些對于迷戀于WEB瀏覽的人們,這簡直是無法忍受。他們渴望能在網絡上
5、看到一些互動內容,從而能夠開發(fā)創(chuàng)建一個類,而不考慮硬件和軟件平臺。開發(fā)人員也極其希望能夠在網絡上創(chuàng)建一類無需考慮軟硬件平臺就可以執(zhí)行的應用程序,當然這些程序還要有極大的安全保障。對于這一點,傳統(tǒng)的編程語言顯得無力,面對SUN的工程師早就察覺到了這一點,自1994年以來,他們就開始將OAK技術應用于網絡上,于是就出現(xiàn)了HOTJAVA版本。當SUN公司1995年正式以JAVA這個名字推出的時候,太多的網絡開發(fā)人員都聯(lián)想過:這正是我所期盼得到的,后來JAVA變得生活中必不可少的一部分,小草突然間變成了大樹。 2.2 MYSQL數(shù)據庫 數(shù)據庫有功能如下: (1)數(shù)據庫管理系統(tǒng)有兩種定義,一種是
6、數(shù)據類型定義,另一種是數(shù)據存儲形式的功能定義。信作為每個記錄的每個字段中的一個數(shù)據。由于記錄的不同,那么,對應的數(shù)據類型也有所不同。定義的數(shù)據類型,在一定程度上,以確保數(shù)據的完整性。最簡單的方法是,應確保定義文本數(shù)據的完整性規(guī)則。 (2)數(shù)據庫管理系統(tǒng)提供多種數(shù)據處理。比如,表中的信息或者在幾個相關的表或文件中的副本;使用適當?shù)拿罡乱粋€字段或記錄的內容;用一個命令的統(tǒng)計數(shù)據,以實現(xiàn)更復雜的文本數(shù)據功能。 (3)數(shù)據庫管理系統(tǒng)對數(shù)據提供一個特定的保護措施,以確保只有授權用戶才可以查看或修改數(shù)據,這樣多個用戶就可以共享數(shù)據。 MYSQL作為一種開放源碼數(shù)據庫,一起簡單易用的特點廣泛被廣大
7、用戶采用。MYSQL雖然是免費的,但同Oraacle,Sybase,Informix,Db2等商業(yè)數(shù)據庫一樣,具有數(shù)據庫系統(tǒng)的通用性: (1)數(shù)據庫管理系統(tǒng)。我們都知道,所謂的數(shù)據庫就是一些結構化的數(shù)據的聯(lián)合體,要提供對這些數(shù)據的存取、增加、修改、刪除或更加復雜的數(shù)據抽取等操作,需要有一個支撐系統(tǒng),這就是數(shù)據庫管理系統(tǒng)(DBMS),MYSQL完全具有這方面的功能。 (2)關系型數(shù)據庫管理系統(tǒng)。在數(shù)據庫的發(fā)展歷程中,曾出現(xiàn)過多種不同形式的數(shù)據庫系統(tǒng),但關系型數(shù)據庫管理系統(tǒng)(RDBMS)以其優(yōu)越性而被廣為采用,像現(xiàn)在幾種廣泛使用的數(shù)據庫全為關系型數(shù)據庫。同樣,MYSQL也是關系型數(shù)據庫系統(tǒng),支
8、持標準的結構化查詢語言(Structured Query Language)。 (3)開放源碼數(shù)據庫。同商業(yè)性的數(shù)據庫相比,這是MYSQL最大的特點。MYSQL的源碼是公開的,這就意味著任何人,只要遵守GPL的規(guī)則都可以對MYSQL的源碼使用、修改以符合自己特色的需求。 (4)技術特點。MYSQL是C/S架構的服務器,服務器端是多線程的,為客戶端提供了不同的程序接口和鏈接庫,如C、C++、JAVA、Perl、PHP、Tcl等,也提供了簡單的管理工具,如MYSQLadmin,MYSQL等。 正因為MYSQL的源碼是公開的,使得我們有機會從源碼級,更深入得了解MYSQL。 從這一層面上可以
9、探求、了解MYSQL數(shù)據庫的特性: (1)開發(fā)語言C/C++,支持多種編譯器,如gcc,cc,xls,aCC等 (2)對多種字符集的完全支持。MYSQL有如此多的特點,又由于其免費的特點,這就給許多的中小應用提供了不錯的選擇。尤其是對一下中小企業(yè),無論是從降低成本,還是從性能方面,采用MYSQL作為其數(shù)據支撐系統(tǒng),都是一張可行的方案、但也應當注意,采用MYSQL作為應用數(shù)據庫,就意味著所有的問題都需要自己解決,要承擔一定的風險。 (3)支持多種平臺,如AIX、Solaris、HP、FreeBSD、Tru64、SGI、Windows等。 (4)提供多種形式的API,為我們開發(fā)工具的選擇提
10、供了便利。 (5)使用多線程的技術,可充分發(fā)揮系統(tǒng)的特點,避免在SMP系統(tǒng)中出現(xiàn)僅使用單CPU的現(xiàn)象。 (6)對磁盤表的管理采用B樹加密及索引的技術,為我們快速訪問數(shù)據提供了可能。 (7)高性能的內存申請技術。 (8)臨時表采用在內存中以哈希表實現(xiàn)。 (9)提供多種數(shù)據類型,如signed/unsigned integer,double,blob等。 (10)支持定長的和變長的記錄。 (11)所有的列都有缺省值,為我們的某些“粗心”提供了方便。 (12)靈活、安全的權限和密碼系統(tǒng),密碼再傳輸中加密傳送,允許主機端驗證密碼。 (13)客戶端可以通過TCP/IP、Unix套接字、
11、命名管道(NT)連接到MYSQL數(shù)據庫服務器。 (14)提供Windows端的ODBC鏈接。 (15)良好的內存管理機制,尤其是內存泄露的管理,通過了Purify的嚴格測試。 2.3 JSP技術 JSP的由SUN公司協(xié)同很多公司共同建立的一種動態(tài)技術標準。在過去的網頁HTML文件中加入JAVA程序片段和JSP標簽,就構成了JSP網頁JAVA程序段可以操縱數(shù)據庫、重新定向網頁以及發(fā)送E-mail等,也可以訪問,實現(xiàn)建立動態(tài)網站所需要的功能。所有程序操作都在服務器端執(zhí)行,網絡上傳送給客戶端的僅是得到的結果,這樣大大降低了對客戶瀏覽器的要求,即使客戶瀏覽器端不支持JAVA,也可以訪問JSP
12、網頁。同時他實現(xiàn)了HTML語法中的JAVA蔓延發(fā)展。JSP和SERVLET幾乎一模一樣,執(zhí)行的請求是在服務器端執(zhí)行的,每一次返回客戶端的只有一個HTML文版,所以客戶端只要有瀏覽器便可瀏覽網頁。當WEB服務器在接收到訪問JSP網頁的請求時,首先執(zhí)行其中的程序段,隨后便將執(zhí)行的結果連同JSP文件中的HTML代碼一起返回到客戶端中。 2.4 SERVLET SERVLET是一種服務器端的JAVA應用程序,具有獨立于平臺和協(xié)議的特性,可以生成動態(tài)的WEB頁面。它擔當客戶請求與服務器響應的中間層。SERVLET是位于WEB服務器內部的服務器端的JAVA應用程序,與傳統(tǒng)的從命令行啟動的JAVA應用
13、程序不同,SERVLET有WEB服務器進行加載,該WEB服務器必須包含支持SERVLET的JAVA虛擬機。 2.5 JAVABEAN JAVABEAN是一種JAVA語言寫成的可重用組件。JAVABEAN通過提供符合一致性設計模式的公共方法將內部域暴露成員屬性。眾所周知,屬性名稱符合這種模式,其他JAVA類可以通過自身機制發(fā)現(xiàn)和操作這些JAVABEAN屬性。 用戶可以使用JAVABEAN將功能、處理、值、數(shù)據庫訪問和其他任何可以用JAVA代碼創(chuàng)造的對象進行打包,并且其他的開發(fā)者可以通過內部的JSP頁面、SERVLET、其他JAVABEAN、applet程序或者應用來使用這些對象。用戶可
14、以認為JAVABEAN提供了一種隨時隨地的復制和粘貼的功能,而不用關心任何改變。JAVABEAN可以分為兩種:一種是有用戶界面的JAVABEAN;還有一種是沒有用戶界面,主要負責處理事務的JAVABEAN。JSP通常訪問的是后一種JAVABEAN。 2.6 TOMCAT服務器 Tomcat服務器是一個應用服務器,其特點就是免費的并且是源代碼開放的網絡應用服務器,此服務器不便用于重要的場合,只能在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,此服務器多用于開發(fā)和調試JSP程序。 2.7 B/S體系結構 B/S(Browser/Server)結構就是我們說的瀏覽器和服務器結構。這
15、個結構是隨著Internet技術的發(fā)展而對C/S結構的一種變化和改進的結構。在這種結構下,用戶工作界面通過萬維網瀏覽器來實現(xiàn),很少部分事務邏輯在前端(Browser)實現(xiàn),大部分的事務邏輯在服務器端(Server)實現(xiàn),形成所謂三層3-tier結構。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本(TCO)。以現(xiàn)在的技術來看,局域網建立B/S結構的網絡應用,并通過Internet/Intranet模式下數(shù)據庫應用,相對比較容易把握,成本也相當可觀。B/S結構是一次到位開發(fā),能實現(xiàn)不同人員,從不同地點,用不同的接入方式(比如LAN、WAN、Internet
16、/Intranet等等)訪問和操作共同的數(shù)據庫;它能有效地保護數(shù)據庫平臺和管理訪問權限,服務器數(shù)據庫也很安全?,F(xiàn)在很多公司內網(Internet)、外網(Internt)和“AVinfo網絡視頻監(jiān)控系統(tǒng)”就是B/S結構管理軟件,保衛(wèi)人員在局域網各個工作通過萬維網瀏覽器就能實現(xiàn)工作業(yè)務。特別是在JAVA這樣的跨平臺語言出現(xiàn)后,B/S架構管理軟件更為方便、快捷、高校等。 B/S結構主要是利用了不斷成熟的萬維網瀏覽器技術,結合瀏覽器的多種語言(VBScript、JAVAScript)和ActiveX技術,用通用瀏覽器就實現(xiàn)了原來需要復雜專用軟件才能實現(xiàn)的強大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件
17、系統(tǒng)構造技術,成為現(xiàn)在應用軟件的首選體系結構。在網絡拓撲結構上,B/S結構采用星形建立企業(yè)內部通信網絡或利用Internet虛擬專網(VPN)。前者的特點是安全、快捷、準確;后者則具有節(jié)省投資、跨地域廣等特點。同時B/S結構有如下等特點: (1)由于WEB支持底層的TCP/IP協(xié)議,使WEB網與局域網都可以做到連接,從而徹底解決了異構系統(tǒng)的連接問題。 (2)由于WEB采用了“瘦客戶端”,使系統(tǒng)的開放性得到很大的改善,系統(tǒng)對將要訪問系統(tǒng)的用戶數(shù)的限制有所放松。 (3)系統(tǒng)的相對集中性使得系統(tǒng)的維護和擴展變得更加容易。比如數(shù)據庫存儲空間不夠,可再加一個數(shù)據庫服務器;系統(tǒng)要增加功能,可以新增一
18、個應用服務器來運行新功能。 (4)界面統(tǒng)一(全部為瀏覽器方式),操作相對簡單。 (5)業(yè)務規(guī)則和數(shù)據捕獲的程序容易分發(fā)。 3 系統(tǒng)需求分析 自從這個世紀開始,經濟持續(xù)發(fā)展,同樣,人們的生活也發(fā)生了許多變化,尤其是在計算機的應用領域,它已經普及到經濟和社會生活發(fā)展的各個領域。計算機的出現(xiàn),使得老一套的管理方法無法適應當今社會的發(fā)展。許多落后的生產方式阻礙了社會的前進,于是人們迫切尋求解決并能夠提高生產率的方法,這就使得計算機在人們生產中留有重要的地位。 為了提高學校辦公的效率,我對南京理工大學紫金學院的學生成績管理系統(tǒng)進行了調查研究,并聽取了
19、一部分教師和學生建議,知道了學生和教師的需求?,F(xiàn)在追根我大學所學的知識,決定開發(fā)的這個系統(tǒng)采用當前較為流行的編程軟件JAVA作為實現(xiàn)語言,以數(shù)據庫MYSQL作為系統(tǒng)的后臺進行操作。 3.1 系統(tǒng)的框架結構 本系統(tǒng)采用的是B/S架構,即瀏覽器和服務器架構,示意圖如圖1所示。瀏覽器端提供用戶操作界面,接受用戶輸入的各種操作信息,向服務器發(fā)出各種操作命令或數(shù)據請求,同時接收執(zhí)行操作命令后返回的數(shù)據結果,根據業(yè)務邏輯進行相關的運算,再向用戶顯示相應的信息。服務器端接收瀏覽器端的數(shù)據或命令請求,并請求數(shù)據庫服務器執(zhí)行數(shù)據庫操作得到相應的數(shù)據集,對數(shù)據集進行相應的處理,然后將數(shù)據集或處理后的數(shù)據集返
20、回給瀏覽器端。 IE瀏覽器 Tomcat 操作請求 查詢結果 查詢結果 JDBC 數(shù)據庫 瀏覽器 WEB服務器 數(shù)據庫服務器 圖1 系統(tǒng)架構示意圖 3.2 系統(tǒng)功能需求 本系統(tǒng)主要是針對學生成績管理系統(tǒng)提出的要求,運用計算機軟件對學生成績進行增、刪、改、查、統(tǒng)計等操作,同時實現(xiàn)對成績的統(tǒng)計和以電子形式呈現(xiàn)給管理員。 通過需求分析,本系統(tǒng)所具有的功能如下: (1) 查詢某一學生的所有成績 (2)查詢某一學生某一科成績 (3) 查詢某一班級的成績 (4) 對某一科成績進行統(tǒng)計 (5)
21、 打印和下載所查詢或統(tǒng)計出的結果 (6) 錄入成績和修改成績 (7) 數(shù)據庫管理 (8)用戶管理 3.3 系統(tǒng)功能模塊圖 管理員系統(tǒng)具有以下幾個功能模塊:用戶登錄、學生成績管理、學生信息管理、課程成績管理、班級成績管理、教師管理等。 用戶登錄界面為分為管理者、教師、學生,利用登錄賬號和密碼,這樣就使得只有擁有賬號和密碼才可以進入成績系統(tǒng),確保里面有關成績信息不可以被其他人隨意閱讀。所以需要用戶登錄賬號和密碼,確保里面學生成績信息的管理與使用。 管理員權限:成績管理能夠對學生的學號、姓名、課程號、課名、分數(shù)等進行查詢、修改、刪除、添加成績等操作,使管理者操作便捷如圖2。 學生管
22、理可以將學號設置為只讀,選定班級名稱和修改個人信息;課程管理是將某一學生的科目成績進行統(tǒng)計,方便管理。 班級管理是對學生所屬班級進行的管理。該界面我設置了可以增加班級也可以刪除某一個班級,同時也可以修改班級編號和班級名稱等。具備了一個教務管理員應該擁有的基本功能。 教師管理是對教師信息進行管理,教師所具備的屬性有教師編號、姓名、年齡、性別、職稱、電話、郵箱等等。 教師權限:對成績管理,包括增加、刪除成績,查看修改成績。具體有按指定條件查詢、同一班級學生成績排行榜、不同班級之間、總分、平均分并排序、查詢單科課程成績并排序如圖4。 學生權限:查看自己的成績和修改登錄密碼。查看成績包括自己的
23、總分和平均分,也可以查看自己的單科成績如圖3: 管理員登錄 教師管理 班級管理 課程管理 學生管理 成績管理 成績管理 指定條件查詢 同一班級成績排行 班級更新 班級添加 課程更新 添加課程 返回系統(tǒng)界面信息 顯示所有學生信息 添加學生信息 添加學生成績 返回系統(tǒng)界面 不同班級之間總分、平均分排行 查詢單科課程成績并排序 查詢某一課程總分、平均分排序 圖2 管理員系統(tǒng)功能圖 學生登錄 更改密碼 查看成績 單科成績 成績平均分 成績總
24、分 圖3 學生系統(tǒng)功能圖 教師登錄 成績管理 指定條件查詢 同一班級成績排行 添加學生成績 不同班級之間總分、平均分排行 查詢某一課程總分、平均分排序 查詢單科課程成績并排序 返回系統(tǒng)界面 圖4 教師系統(tǒng)功能圖 4 系統(tǒng)數(shù)據庫設計 4.1 E-R圖 班級表:班級表中共有兩個屬性,班級編號、班級名,管理員有三個屬性,編號、姓名、密碼等。其中班級編號是主鍵,主要是對班級進行管理。根據管理員,可以進行班級編號、姓名、密碼的錄入統(tǒng)計等;根據添加編號,可以進行姓名查詢;使得管理員更為方
25、便快捷。如圖5所示: 班級編號 班級名 編號 密碼 姓名 班級 管理 管理員 圖5 班級圖 學生表:學生表中共有七個屬性,年齡、學號、姓名、密碼、所在班級、性別、所在院系,其中學號為主鍵,管理員可以添加學生和刪除學生,方便對學生的管理。如圖6所示: 學號 姓名 編號 密碼 姓名 班級 管理 管理員 密碼 所在班級 年齡 所在院系 性別 圖6 學生圖 課程編號 課程名稱 編號 密碼 姓名 課程 管理 管理員
26、 課程表:課程表中共有兩個屬性,分別為課程標號和課程名稱,其中課程標號是主鍵,通過查找課程標號,管理員可以添加或者是刪除課程名稱。如圖7所示: 圖7 課程圖 4.2 創(chuàng)建數(shù)據表 通過分析系統(tǒng),于是決定建立三張表,分別是成績表、學生表和班級表如下: 成績表:由四部分組成,分別是字段名、中文名、是否為主鍵、字段大小,分別列出成績表中存在的stu_id、stu_name、cou_id、cou_name、sco_cj。這些都是顯示字段所要表達的意思。 表1 成績表score_tab 字段名 中文名 是否為主鍵 字段大小 是否為
27、空 stu_id 學生編號 主鍵 char(10) 非空 stu_nam 學生姓名 varchar(20) 非空 cou_id 課程編號 與stu_id聯(lián)合主鍵 char(8) 非空 cou_name 課程名稱 varchar(20) 非空 sco_cj 分數(shù) int 非空 clss_name 班級名 Varchar 非空 學生表,有四部分組成,字段名、中文名、是否為主鍵、字段大小,分別給出學生表中存在的stu_id、stu_name、stu_pwd、stu_sex、stu_age、stu_yx、stu_class。表示顯示
28、字段需要表達的意思。 表2 學生表stu_tab 字段名 中文名 是否為主鍵 字段大小 是否為空 stu_id 學生編號 主鍵 char(10) 非空 stu_name 學生姓名 varchar(25) 非空 stu_pwd 密碼 varchar(25) 非空 stu_sex 性別 char(10) 非空 stu_age 年齡 char(10) 非空 stu_yx 所屬院系 varchar(25) 非空 stu_class 所屬班級 varchar(25) 非空
29、 班級表:由四部分組成,字段名、中文名、是否為主鍵、字段大小,同時分別列出用戶表中存在的class_id、class_name。 表3 班級表class_tab 字段名 中文名 是否為主鍵 字段大小 是否為空 class_id 班級編號 主鍵 char(10) 非空 class_name 班級名 varchar(20) 非空 4.3 系統(tǒng)結構圖 圖8是學生成績管理系統(tǒng)結構,該系統(tǒng)是B/S架構,此系統(tǒng)使用的是MYSQL數(shù)據庫作為后臺數(shù)據庫。Myeclipse6.5作為前臺開發(fā)工具,通過網頁形式來完成該成績管理系統(tǒng)的模塊和功能設計。
30、 圖8 系統(tǒng)結構圖 5 系統(tǒng)詳細設計 此部分主要內容包括,登錄成績管理系統(tǒng)界面的設計、內部功能設計。第一,所要設計的應該是流程圖,通過流程圖的設計,知道該系統(tǒng)所運行的步驟;第二,對系統(tǒng)界面的代碼闡釋,知道系統(tǒng)有哪些功能;最后,就是管理者可以自己增添學生成績數(shù)據或者是選擇類別等等。 5.1 登錄流程 在Myeclipse6.5中打開登錄系統(tǒng)的網頁,在賬戶名后面輸入admin用戶名,在密碼后面輸入admin密碼,根據所輸入的用戶名和登錄密碼來判斷,登錄成功則用戶名和密碼正確,如果失敗,則說明用戶名或者密碼是錯誤的;其次就是學生登錄,和管理員登錄流程一樣,首先輸入學生賬
31、號,初始賬號為學生的學號,密碼是以學生的學號作為密碼。如果登錄成功,說明學生的賬號信息和密碼匹配,失敗說明不匹配。 5.2 登錄界面 首先啟動瀏覽器,在網站里輸入(http://localhost:8080/GradeSys/)進入登錄界面。管理員登錄界面后對學生成績等數(shù)據的管理,包括增、刪、查、改、排序、統(tǒng)計、檢索、權限控制等功能。更重要的是當管理員登錄系統(tǒng)后,可以一目了然得看見每一個學生的成績。同時管理員可以分別對學生、課程、班級、教師同時進行管理。學生登錄只能對自己的成績查詢,包括對自己的總分和平均分以及單科成績,其次就是對自己的賬號更改密碼。教師登錄只可以對學生的成績查詢并進行管
32、理。如圖10所示,在登錄界面中,由于數(shù)據庫中的賬戶和密碼,當管理員、學生、教師輸入的賬戶和密碼與登錄的賬戶或者密碼不同時,則顯示賬號或者密碼輸入錯誤界面。該界面的要求是需要輸入正確的賬戶名和密碼方可進入下一界面: 圖9 教師登錄界面 5.3 管理員登錄后主界面 主界面:這個界面是管理員對學生所有信息進行管理的登錄界面,管理員可以進入需要更改信息的目錄,如成績管理、學生管理、課程管理、班級管理等如圖11所示。這個界面還有一部分是用文字對系統(tǒng)的簡單介紹“本系統(tǒng)主要實現(xiàn)對學生的成績進行管理,共分4大板塊,核心模塊:成績管理,可對成績增刪改查以及排序統(tǒng)計等。 圖10 管理員登錄后
33、主界面 主界面部分代碼:
5.3.1 成績管理界面 成績管理界面:這個是對學生成績管理的界面,管理員可以通過這個界面來錄入信息,也可以修改學生的學號、姓名、課程編號、課程名稱等等,圖11所示。其中幾個比較有特色的部分就是按指定條件查詢、同一班級學生成績排行榜、添加學生成績、不同班級之間總分、平均分排名、查詢某一課程總分、平均分并排序、查詢單科課程成績并排序。指定條件查詢就是按照輸入的學號、姓名、課名三個條件,進行學生成績的查詢如圖12所示。不同班級之間總分、平均分排名功能主要是將班級名和班級的總分顯示出來,其中包括對班級成績的總分高低排序和平均分高低排序如圖13。查詢某一課程總36、分、平均分并排序主要是在上一個功能的基礎上添加了對某一班級課程總分和課程平均分進行統(tǒng)計,同時可以查看某一班級的某一課程的課程總分和課程平均分如圖14。添加學生成績界面主要是當有學生成績更新的時候可以方便得對學生成績的管理添加或者是更新,添加的屬性主要有學號、姓名、課號、課名、分數(shù)和班級等如圖15。查詢單科課程成績并排序主要實現(xiàn)對某一學生的單科成績進行排行,教師也可以對其更新和刪除如圖16。同一班級學生成績排行榜主要是根據學生的總分和平均分進行排行如圖17所示: 圖 11 成績管理界面 (1) 按指定條件查詢 按指定條件查詢主要是根據學生的學號、姓名、課名中任意一個條件表可以查看到學生
37、成績的相關信息如圖12所示: 圖 12 按條件查詢 (2) 同一班級學生成績排行榜 同一班級學生成績排行榜主要是按照如按總分高低排序和按平均分高低排序等條件對學生成績進行的排序如圖13所示: 圖13同一班級學生成績排行榜 (3) 添加學生成績 添加學生成績主要是按照學生的信息對學生的成績進行的添加,主要關鍵字包括學號、姓名、課號、課名、分數(shù)和班級等如圖14所示: 圖14 添加學生成績 (4)不同班級之間總分、平均分排名 不同班級之間總分、平均分排名主要是對不同班級根據總分高低排序和平均分高低排序進行成績的排序如圖15所示: 圖15 不同班
38、級之間總分、平均分排名 (5)查詢某一課程總分、平均分并排序 查詢某一課程總分、平均分并排序主要是對學生選修的某一課程按照總分高低和平均分高低進行的 排序如圖16所示: 圖16 查詢某一課程總分、平均分并排序 (6)查詢單科課程成績并排序 查詢單科課程成績并排序主要是對學生選修的任何一門課程進行排序如圖17所示: 圖17 查詢單科課程成績并排序 5.3.2 學生管理界面 學生管理界面:這個界面是對學生信息管理的一個界面,其中包括對學號、姓名、登錄密碼、性別、年齡、所在院系以及班級等信息的修改等如圖18。此外,這個界面中有一個添加學生信息界面,進入此界面便可以看到按
39、條件添加的學生信息,其中包括學號、姓名、性別、院系、班級等等如圖19所示。另外一個界面就是“顯示所有學生信息“,點擊這個界面就可以看到所有學生的信息了,包括學生的學號、姓名、密碼、性別、年齡、所在院系、班級等等如圖20所示:
圖18 學生管理界面
圖19 添加學生界面
圖20 所有學生信息界面
所有學生信息部分代碼:
if(stu_class!=null){
List
40、!=null){ request.setAttribute("stu_list",stu_list); RequestDispatcher rd= request.getRequestDispatcher("/stu_view.jsp");//登錄不正確時的頁面 rd.forward(request, response); } 5.3.3 課程管理界面 課程管理界面:此界面是一個對學生課程編號和課程名稱進行管理的界面,這個界面主要是針對學生課程的管理如圖21所示。如我們所看到的更新課程信息也在這個界面,點擊可以看到對課程編號和課程名稱的添加如圖2
41、2。此外包括一個重點就是可以添加學生課程,如果上面那個功能只能更新課程信息的話,那么這個界面就可以對課程信息的添加,包括課程編號和課程名稱如圖23:
圖21 課程管理界面
課程管理代碼如下:
<%
List
43、ou_id(); request.setAttribute("cou_id",cou_id); String cou_name=course.getCou_name(); request.setAttribute("cou_name",cou_name); String parm1="課號:"+cou_id+","+"課名:"+cou_name; %> 圖22 課程更新界面 課程更新相關代碼: if(str_cou_id!=""&&str_cou_name
44、!=""){ String cou_id = new String(str_cou_id.getBytes("ISO8859-1"),"utf-8"); System.out.println("學生管理提交學生id:"+cou_id); String cou_name= new String(str_cou_name.getBytes("ISO8859-1"),"utf-8"); int s=new cou_Manager().cou_UpdateCourse(cou_id, cou_name); if(s!=0){ RequestDispat
45、cher rd = request.getRequestDispatcher("/cou_viewSERVLET"); //要轉發(fā)的頁面 rd.forward(request, response); }else{ String msg="更新失敗"; String page="cou_viewSERVLET"; msgTip2(request,response,msg,page); } }else{ String msg="請?zhí)顚懻n號,課名,不能為空"; String page="cou_viewSERVLET";
46、 msgTip2(request,response,msg,page); } 圖23 課程添加界面 5.3.4 班級管理界面 班級管理界面:此界面主要是對班級信息的管理,包括班級編號和班級名稱,如圖24所示。如上面說的,這個界面也有一個功能就是添加班級,此界面可以添加班級信息如圖25: 圖24 班級管理界面 班級管理界面部分代碼如下:
47、p;
48、/td>
49、st.setAttribute("class_id",class_id); String class_name=myss.getClass_name(); String parm1=class_name; request.setAttribute("class_name",class_name); %> 圖25 添加班級界面 5.3.5 教師管理界面 教師管理界面主要是管理員對教師信息的管理,主要是對教師的編號、姓名、年齡、性別、職稱、電話、郵箱等的管理如圖26。同時也可以添加教師如圖27所示:
50、圖26 教師管理界面 圖27 添加教師界面 5.3.6 學生登錄界面 和教師登錄界面一樣,啟動瀏覽器,在網站里輸入以下網址(http://localhost:8080/GradeSys/)進入登錄界面。初始賬戶為學生的學號,初始密碼也為學生的學號。 5.4 學生登錄主界面 此界面主要是面向學生,有查看成績和更改密碼的功能,如圖29所示: 圖28 學生登錄主界面 5.4. 1 查看成績界面 查看成績界面主要是有關學生的信息,包括學號、姓名、所屬班級以及對應課程的總分、平均分等相關信息,如圖30所示: 圖29 查看學生成績界面 5.4.2 學生更改
51、密碼界面 這個界面主要是對學生的密碼進行修改的界面,如圖30所示: : 圖30 學生更改密碼界面 5.5 教師登錄界面 此界面主要是教師通過登錄系統(tǒng)然后對學生信成績的查詢、修改、查看排名等等,如圖31所示: 圖31 教師登錄界面 結 論 經過一個學期的系統(tǒng)設計,大體上完成了學校給我有關學生成績管理系統(tǒng)的任務,其中包括程序的設計工作和論文初稿的完成,期間我也認真查閱資料過,在尋找解決問題的過程中我學到了許多知識。我想告知的是,由于我的知識淺薄,學到的也并不全面
52、,所以該系統(tǒng)仍有很多不足的地方,希望見諒。但是我已經盡量得將 該系統(tǒng)做得更好,以滿足管理者或者學校的需求。 經過對此成績管理系統(tǒng)的分析、設計等工作,該系統(tǒng)共有四個模塊,包括成績管理、學生管理、課程管理、班級管理。登錄界面一般,比較平和,操作極其簡便,此系統(tǒng)可以方便得使管理員來管理每個學生的成績,此外,該系統(tǒng)已經完成了任務書上面的所有任務,可以說已經達到了學校的要求。 雖然已經完成了任務書上面的功能,但是我還是看到這個系統(tǒng)做得并不是很完美,首先當屬界面,不夠華麗,同時,登錄界面中沒有修改賬戶和密碼的權限等等。還有很多問題沒有被發(fā)現(xiàn),如果老師發(fā)現(xiàn)還請多多指點指點。 最后,總的來說,通過這次系
53、統(tǒng)設計,學到了許多平時學不到的知識,雖然以后不打算從事軟件行業(yè),但是已經使我大開眼界。 致 謝 迄今為止,畢業(yè)設計基本已經完成,完成這么一個系統(tǒng)不止我一個人,還有我的老師們,他們給了我建議,使我順利完成系統(tǒng)。在做系統(tǒng)的一個學期里,背后默默地支持我的是導師。從開題報告到英文翻譯再到現(xiàn)在的論文,她無時無刻不在為我的畢業(yè)設計提出思想。幫我檢查錯誤,審核報表,然后一次又一次得幫我修改,不厭其煩,使我很感動。 在這里我非常感謝我的導師和我宿舍的室友,在 編寫代碼的過程中,室友沒有少忙,幫我檢查測試系統(tǒng),細心得解決每一個問題,沒有他
54、們我是不可能這么快就完成系統(tǒng)的設計。 其次感謝曾經每一位教授我知識的老師,沒有他們,我是學不到這么多有用的知識。 最后,感謝學校為我提供這么一個良好的環(huán)境,有今天的成果,離不開學校的養(yǎng)育。 參 考 文 獻 [1] 張莉. SQL Server數(shù)據庫原理及應用教程[M]. 北京:清華大學出版社,2003. [2] 吳建. UML基礎與Rose建模案例[M]. 北京:人民郵電出版社,2004. [3] 陸正武. JAVA項目開發(fā)實踐[M].西安:中國鐵道出版社,2005. [4] 姜江. 數(shù)據庫系統(tǒng)分析設計與應用
55、[M]. 北京:電子工業(yè)出版社,2004. [5] 張大治. 精通Eclipse[M]. 北京:清華大學出版社,2006. [6] 李燁. 別具光芒DIV+CSS網頁布局與美化[M]. 北京:人民郵電出版社,2006. [7] 渠連恩,趙珊.基于J2EE和MVC模式在B/S系統(tǒng)開發(fā)中的應用研究[J].電腦編程技巧與維護,2013(23),71-73. [8] 祝燎. 用Visual FoxPro設計學生成績管理系統(tǒng)[J]. 河西學院學報,2005, 21(05):63-65. [9] 蒲玲. 基于WEB的學生成績管理系統(tǒng)設計與實現(xiàn)[D]. 北京:電子科技大學, 2007.
56、 [10] 龐雄文.基于實例的“軟件工程”課堂教學方法[J]. 現(xiàn)代教育技術,2010(11):44-47. [11] 徐軍,吳玉新. 網站ASP后臺解決方案[M].北京:人民郵電出版社,2001. [12] 陳佳.基于SQL Server數(shù)據庫優(yōu)化查詢的分析[J].企業(yè)導報,2010(8):179-181. [13] 谷震離.SQL Server數(shù)據庫應用程序性能優(yōu)化方法[J].計算機工程與設計,2006(15):2884-2886. [14] 包錦陽. 大專生畢業(yè)論文(設計)寫作指導[M].浙江:浙江大學出版社, 2004. [15] 張軍林,陽富民,胡貫榮.JavaScript語言解釋器的設計與實現(xiàn)[J].計算機工程與應用,2003(30):124-125. [16] 邵麗萍. 網頁編程技術[M].北京:清華大學出版社,2004.
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。