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