課堂考勤管理系統(tǒng)的設計 優(yōu)秀論文 定稿
《課堂考勤管理系統(tǒng)的設計 優(yōu)秀論文 定稿》由會員分享,可在線閱讀,更多相關(guān)《課堂考勤管理系統(tǒng)的設計 優(yōu)秀論文 定稿(29頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 2012屆本科生畢業(yè)論文學 號:080501050102 成 績: 課堂考勤管理系統(tǒng)的設計 院 部: 計算機科學與技術(shù)學院 專 業(yè):計算機科學與技術(shù) 姓 名: 王 倩 指導教師: 陳 強二?一二年四月 畢業(yè)論文誠信聲明 本人鄭重聲明: 所呈交的畢業(yè)論文《課堂考勤管理系統(tǒng)的設計》是本人在指導老師的指導下,獨立研究、寫作的成果。論文中所引
2、用是他人的無論以何種方式發(fā)布的文字、研究成果,均在論文中以明確方式標明。 本聲明的法律結(jié)果由本人獨自承擔。 畢業(yè)論文作者簽名: 王 倩 2012 年 月 日 摘 要 本系統(tǒng)采用JAVA技術(shù),以Tomcat為JAVA服務器、Microsoft SQL Server 2000 為數(shù)據(jù)庫系統(tǒng),建立了一個基于B/S模式的三層體系的課堂考勤管理網(wǎng)站系統(tǒng),以加強課堂考勤管理,提高課堂教學質(zhì)量。 本系統(tǒng)基于JAVA技術(shù)建立的課堂考勤管理畢業(yè)設計,其目標是完成高校教學中課堂考勤管理。系統(tǒng)主要包括未登錄用戶模塊、學生模塊、教師模塊、教務員模塊
3、四個功能模塊。其中未登錄用戶模塊實現(xiàn)了信息查找等功能;學生模塊實現(xiàn)了學生信息修改、考勤查看等功能;教師模塊實現(xiàn)了教師修改信息、按教學班考勤等功能;教務員模塊主要實現(xiàn)了密碼修改,對學生、教師、課程、學生選課等。 【關(guān)鍵詞】 JAVA;數(shù)據(jù)庫;B/S模式;考勤Abstract The system using the JAVA techonlogy,taking Tomcat as the JAVA server,Microsoft SQL Server 2000 as the database system,has established the website system of cla
4、ssroom checking attendance manages which is based on B/S pattern.In order to enhance classroom attendance management, improve the quality of classroom teachingThe classroom checking attendance management system is based on JAVA technology.Its goal is completing the classroom checking attendance in u
5、niversities.The system mainly includes four modules.They are the user not registered module,student module,teacher module and Educational administration personnel module. The system mainly includes four modules.They are the user not registered module,student module,teacher module and Educational adm
6、inistration personnel module.In which has not registered the user module has much functions,such as searching information and so on;The student module realized functions such as modifying student information and observing the results of checking attendance;The teacher module realized the teacher to
7、revise the information and check attendance according to the class;The last module mainly realized the password to revise and the information of the student,the teacher,the course to manage. 【關(guān)鍵詞】 JAVA;database;B/Spattern;checking attendant 目 錄 緒論 1.1開發(fā)背景 ………………………………………………………………11.1.1 課題研究內(nèi)容和
8、意義……………………………………………2 1.2可執(zhí)行性分析…………………………………………………………21.3技術(shù)分析………………………………………………………………31.3.1B/S模式…………………………………………………………31.3.2JAVA技術(shù) ………………………………………………………41.3.36>HTML和CSS ……………………………………………………61.3.4JavaScript技術(shù) ………………………………………………7 系統(tǒng)設計2.1系統(tǒng)需求分析…………………………………………………………92.1.1 需求概述……………………………………………………
9、……9 2.1.2 系統(tǒng)設計目標……………………………………………………92.1.3 系統(tǒng)功能需求……………………………………………………10 2.1.4 系統(tǒng)設計思想……………………………………………………112.2 系統(tǒng)環(huán)境配置 ………………………………………………………11 數(shù)據(jù)庫設計與實現(xiàn) 3.1 Microsoft SQL Server2000 簡介 …………………………………13 3.2 數(shù)據(jù)庫需求分析………………………………………………………133.3 數(shù)據(jù)庫邏輯設計………………………………………………………17 3
10、.4 數(shù)據(jù)庫結(jié)構(gòu)創(chuàng)建 ………………………………………………………173.4.1 建立數(shù)據(jù)表………………………………………………………18 3.4.2 數(shù)據(jù)表間關(guān)系……………………………………………………22 系統(tǒng)詳細設計 4.1 用戶登錄………………………………………………………………23 4.1.1 不訪問服務JavaScript器函數(shù)驗證 ……………………………254.1.2 登陸服務器訪問驗證………………………………………………26 4.2 學生功能模塊設計……………………………………………………28 4.2.
11、1 學生信息修改………………………………………………………28 4.2.2 考勤查看……………………………………………………………30 4.3 教師功能模塊設計……………………………………………………304.4 教務員功能模塊設計…………………………………………………33 4.4.1 學生、教師、課程、學生選課管理………………………………33第5章 結(jié) 論 ………………………………………………………………………35 致 謝 ………………………………………………………………………………36 參考文獻 …………………………………………………………………
12、………………37 附 錄 ……………………………………………………………………………39 緒 論 Internet是目前世界上最大的計算機互聯(lián)網(wǎng)絡,他遍布全球,將世界各地各種規(guī)模的網(wǎng)絡連接成一個整體。作為internet上一種先進的,易于被人們所接受的信息檢索手段。Java是由Sun Microsystems公司于1995年5月推出的Java程序設計語言(以下簡稱Java語言)和Java平臺的總稱。用Java實現(xiàn)的HotJava瀏覽器(支持Java applet)顯示了Java的魅力:跨平臺、動感的Web、
13、Internet計算。從此,Java被廣泛接受并推動了Web的迅速發(fā)展,常用的瀏覽器現(xiàn)在均支持Java applet。另一方面,Java技術(shù)也不斷更新。 1.1開發(fā)背景 目前社會上信息管理系統(tǒng)發(fā)展飛快,各個學校都引入了信息管理軟件來管理自己日益增長的各種信息,考勤管理系統(tǒng)也是有了很大的發(fā)展,商業(yè)化得學校信息管理軟件也不少。而目前學校的這項工作還處于半手工福安里階段,信息資源的的數(shù)字化程度低,大部分歷史積累的數(shù)據(jù),尚未數(shù)字化。不利于科學福安里和決策。 高校學生上課考勤管理都是以任課老師上課點名,記錄學生上課出勤情況,學期末根據(jù)上課出勤表及作業(yè)登記表對學生平時成
14、績打分,然后把數(shù)據(jù)上交到各院系。學生請假以傳統(tǒng)的寫請假條的形式向各自班主任請假,時間長的請假,要班主任、院系領(lǐng)導都批準方能生效。這種的模式在目前高校管理中暴露出了許多弊端:一是學生請假不方便;二是學生請假對任課老師不透明,造成對學生上課出勤誤記的情況;三是學生上課出勤表對班主任不透明,班主任很難知道本班學生上課的出勤情況,不便于與學生及時有效的溝通;四是學生對自己整個學期的上課出勤情況沒有整體的統(tǒng)計信息。五是院系領(lǐng)導、學校領(lǐng)導更加把握不住學生上課的出勤情況。 1.1.1 課題研究內(nèi)容和意義 課堂是學生學習的主要場所,課堂學習是學生獲取知識、培養(yǎng)能力、提高素質(zhì)的主渠道。抓好課堂考勤是
15、創(chuàng)造良好學習氛圍,形成良好班風學風的必要條件。而在當前各高校學生上課較以前分散,課堂、教室的流動性使得班級概念相對弱化,班主任、輔導員、班干部對學生的上課情況的了解和掌握較弱,同時部分教師淡化課堂考勤,導致一些學生利用課堂考勤監(jiān)控不嚴而長期曠課。課堂教學的新特點使傳統(tǒng)的課堂考勤制度遇到嚴峻的挑戰(zhàn)。作為計算機應用的一部分,使用計算機對學生課堂考勤信息進行管理,據(jù)有以下優(yōu)點:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高效率,也是學校科學化、正規(guī)化管理的重要條件。 因此,開發(fā)這樣一套管理軟件成為很必要的事情。 1.2可執(zhí)行性分析
16、(1)技術(shù)可行性 本系統(tǒng)僅需要一臺裝有Microsoft SQL Server 2000的計算機即可,對機器本身沒有太高的要求,一般當前學?;騻€人電腦完全可滿足要求。對于軟件技術(shù)要求,現(xiàn)在的程序設計語言已非常成熟,采用B/S模式,利用JAVA技術(shù),使用SQL Server 2000 中提供的數(shù)據(jù)庫。所以在技術(shù)上完全可行。 經(jīng)濟可行性 由于本系統(tǒng)是高校課堂考勤管理的系統(tǒng),只要電腦聯(lián)入互聯(lián)網(wǎng),即可使用系統(tǒng),系統(tǒng)成本主要集中在系統(tǒng)開發(fā)上,當系統(tǒng)投入運行后可以為學校節(jié)約大量的人力,物力,提高學校的考勤效率。所帶來的效益遠遠大于系統(tǒng)軟件的開發(fā)成本,在經(jīng)濟上完全可行。
17、 操作可行性 界面設計時充分考慮管理人員的習慣,使得操作簡單;數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計準確;制表靈活;適應力強;容易擴充。所以系統(tǒng)操作上完全可行。 1.3技術(shù)分析 本系統(tǒng)結(jié)構(gòu)為B/S模式,采用JAVA技術(shù)。網(wǎng)頁制作技術(shù)采用HTML,采用JavaScript和CSS技術(shù),使得網(wǎng)頁操作方便、快捷,而且界面美觀、個性。 1.3.1B/S模式 B/S(Browser/Server,瀏覽器/服務器)模式又稱B/S結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對C/S模式應用的擴展。在這種結(jié)構(gòu)下,用戶工作界面是通過IE瀏覽器來實現(xiàn)的。B/S模式最大的好處是
18、運行維護比較簡便,能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)訪問和操作共同的數(shù)據(jù);最大的缺點是對企業(yè)外網(wǎng)環(huán)境依賴性太強,由于各種原因引起企業(yè)外網(wǎng)中斷都會造成系統(tǒng)癱瘓。 隨著Internet和的流行,以往的主機/終端和C/S都無法滿足當前的全球網(wǎng)絡開放、互連、信息隨處可見和信息共享的新要求,于是就出現(xiàn)了B/S型模式,即瀏覽器/服務器結(jié)構(gòu)。B/S模式最大特點是:用戶可以通過瀏覽器去訪問Internet上的文本、數(shù)據(jù)、圖像、動畫、視頻點播和聲音信息,這些信息都是由許許多多的Web服務器產(chǎn)生的,而每一個Web服務器又可以通
19、過各種方式與數(shù)據(jù)庫服務器連接,大量的數(shù)據(jù)實際存放在數(shù)據(jù)庫服務器中??蛻舳顺藶g覽器,一般無須任何用戶程序,只需從Web服務器上下載程序到本地來執(zhí)行,在下載過程中若遇到與數(shù)據(jù)庫有關(guān)的指令,由Web服務器交給數(shù)據(jù)庫服務器來解釋執(zhí)行,并返回給Web服務器,Web服務器又返回給用戶。在這種結(jié)構(gòu)中,將許許多多的網(wǎng)連接到一塊,形成一個巨大的網(wǎng),即全球網(wǎng)。而各個企業(yè)可以在此結(jié)構(gòu)的基礎(chǔ)上建立自己的Internet。 B/S結(jié)構(gòu)的優(yōu)點: 具有分布性特點,可以隨時隨地進行查詢、瀏覽等業(yè)務處理。 業(yè)務擴展簡單方便,通過增加網(wǎng)頁即可增加服務器功能。 維護簡單方便,只需要改
20、變網(wǎng)頁,即可實現(xiàn)所有用戶的同步更新。 開發(fā)簡單,共享性強 1.3.2JAVA技術(shù)Java是一種可以撰寫跨平臺應用軟件的面向?qū)ο蟮某绦蛟O計語言,是由Sun Microsystems公司于1995年5月推出的Java程序設計語言和Java平臺(即JavaSE, JavaEE, JavaME)的總稱。Java 技術(shù)具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應用于個人PC、數(shù)據(jù)中心、游戲控制臺、科學超級計算機、移動電話和互聯(lián)網(wǎng),同時擁有全球最大的開發(fā)者專業(yè)社群。在全球云計算和移動互聯(lián)網(wǎng)的產(chǎn)業(yè)環(huán)境下,Java更具備了顯著優(yōu)勢和廣闊前景。 Java 編程語言的風格十分接近C、C+
21、+ 語言。Java是一個純的面向?qū)ο蟮某绦蛟O計語言,它繼承了 C++ 語言面向?qū)ο蠹夹g(shù)的核心,Java舍棄了C ++語言中容易引起錯誤的指針(以引用取代)、運算符重載(operator overloading)、多重繼承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的對象所占據(jù)的內(nèi)存空間,使得程序員不用再為內(nèi)存管理而擔憂。在 Java SE 1.5 版本中,Java 又引入了泛型編程(Generic Programming)、類型安全的枚舉、不定長參數(shù)和自動裝/拆箱等語言特性。 Java 不同于一般的編譯執(zhí)行計算機語言和解釋執(zhí)行計算機語言。它首先將源代碼編譯成二進制字節(jié)碼
22、bytecode,然后依賴各種不同平臺上的虛擬機來解釋執(zhí)行字節(jié)碼,從而實現(xiàn)了“一次編譯、到處執(zhí)行”的跨平臺特性。不過,每次的編譯執(zhí)行需要消耗一定的時間,這同時也在一定程度上降低了 Java 程序的運行效率。 Java的主要特性: (1)Java語言是簡單的。Java語言的語法與C語言和C++語言很接近,使得大多數(shù)程序員很容易學習和使用Java。另一方面,Java丟棄了C++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉(zhuǎn)換。特別地,Java語言不使用指針,并提供了自動的廢料收集,使得程序員不必為內(nèi)存管理而擔憂。 (2)Java語言是一個面
23、向?qū)ο蟮?。Java語言提供類、接口和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實現(xiàn)機制(關(guān)鍵字為implements)。Java語言全面支持動態(tài)綁定,而C++ 語言只對虛函數(shù)使用動態(tài)綁定??傊?Java語言是一個純的面向?qū)ο蟪绦蛟O計語言。 (3)Java語言是分布式的。Java語言支持Internet應用的開發(fā),在基本的Java應用編程接口中有一個網(wǎng)絡應用編程接口(java net),它提供了用于網(wǎng)絡應用編程的類庫,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI遠程方法激活機制也是開發(fā)
24、分布式應用的重要手段。 (4)Java語言是健壯的。Java的強類型機制、異常處理、廢料的自動收集等是Java程序健壯性的重要保證。對指針的丟棄是Java的明智選擇。Java的安全檢查機制使得Java更具健壯性。 (5)Java語言是安全的。Java通常被用在網(wǎng)絡環(huán)境中,為此,Java提供了一個安全機制以防惡意代碼的攻擊。除了Java語言具有的許多安全特性以外,Java對通過網(wǎng)絡下載的類具有一個安全防范機制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機制(類SecurityManager)讓Java應用設置安全哨兵。
25、 (6)Java語言是體系結(jié)構(gòu)中立的。Java程序(后綴為java的文件)在Java平臺上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件), 然后可以在實現(xiàn)這個Java平臺的任何系統(tǒng)中運行。這種途徑適合于異構(gòu)的網(wǎng)絡環(huán)境和軟件的分發(fā)。 (7)Java語言是可移植的。這種可移植性來源于體系結(jié)構(gòu)中立性,另外,Java還嚴格規(guī)定了各個基本數(shù)據(jù)類型的長度。Java系統(tǒng)本身也具有很強的可移植性,Java編譯器是用Java實現(xiàn)的,Java的運行環(huán)境是用ANSI C實現(xiàn)的。 (8)Java語言是解釋型的。如前所述,Java程序在Java平臺上被編譯為字節(jié)碼格式,然后可以在實
26、現(xiàn)這個Java平臺的任何系統(tǒng)中運行。在運行時,Java平臺中的Java解釋器對這些字節(jié)碼進行解釋執(zhí)行,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運行環(huán)境中。 (9)Java是高性能的。與那些解釋型的高級腳本語言相比,Java的確是高性能的。事實上,Java的運行速度隨著JITJust-In-Time編譯器技術(shù)的發(fā)展越來越接近于C++。 (10)Java語言是多線程的。在Java語言中,線程是一種特殊的對象,它必須由Thread類或其子(孫)類來創(chuàng)建。通常有兩種方法來創(chuàng)建線程:其一,使用型構(gòu)為ThreadRunnable 的構(gòu)造子將一個實現(xiàn)了Runnable接口的對象包裝成一個線程,其
27、二,從Thread類派生出子類并重寫run方法,使用該子類創(chuàng)建的對象即為線程。值得注意的是Thread類已經(jīng)實現(xiàn)了Runnable接口,因此,任何一個線程均有它的run方法,而run方法中包含了線程所要運行的代碼。線程的活動由一組方法來控制。Java語言支持多個線程的同時執(zhí)行,并提供多線程之間的同步機制(關(guān)鍵字為synchronized)。 (11)Java語言是動態(tài)的。Java語言的設計目標之一是適應于動態(tài)變化的環(huán)境。Java程序需要的類能夠動態(tài)地被載入到運行環(huán)境,也可以通過網(wǎng)絡來載入所需要的類。這也有利于軟件的升級。另外,Java中的類有一個運行時刻的表示,能進行運行時刻的類型檢查
28、。 Java語言的優(yōu)良特性使得Java應用具有無比的健壯性和可靠性,這也減少了應用系統(tǒng)的維護費用。Java對對象技術(shù)的全面支持和Java平臺內(nèi)嵌的API能縮短應用系統(tǒng)的開發(fā)時間并降低成本。Java的編譯一次,到處可運行的特性使得它能夠提供一個隨處可用的開放結(jié)構(gòu)和在多平臺之間傳遞信息的低成本方式。 1.3.3HTML和CSS 文本標記語言,即HTML(Hypertext Markup Language),是用于描述網(wǎng)頁文檔的一種標記語言。 超文本標記語言在上的一個超媒體文檔稱之為一個頁面(page)。作為一個組織或個人在萬維網(wǎng)上放置開始點的頁面稱為主頁Homepa
29、ge,或首頁,主頁中通常包括有指向其他相關(guān)頁面或其他節(jié)點的指針(超級鏈接)。在邏輯上將視為一個整體的一系列頁面的有機集合稱為網(wǎng)站(Website或Site)。 HTML是一種規(guī)范,一種標準,它通過標記符號來標記要顯示的網(wǎng)頁中的各個部分。網(wǎng)頁文件本身是一種文本文件,通過在文本文件中添加標記符,可以告訴瀏覽器如何顯示其中的內(nèi)容(如:文字如何處理,畫面如何安排,圖片如何顯示等)。瀏覽器按順序閱讀網(wǎng)頁文件,然后根據(jù)標記符解釋和顯示其標記的內(nèi)容,對書寫出錯的標記將不指出其錯誤,且不停止其解釋執(zhí)行過程,編制者只能通過顯示效果來分析出錯原因和出錯部位。但需要注意的是,對于不同的瀏覽器,對同一標記符
30、可能會有不完全相同的解釋,因而可能會有不同的顯示效果。 HTML之所以稱為超文本標記語言,是因為文本中包含了所謂“超級鏈接”點。所謂超級鏈接,就是一種URL指針,通過激活(點擊)它,可使瀏覽器方便地獲取新的網(wǎng)頁。這也是HTML獲得廣泛應用的最重要的原因之一。 HTML文檔制作不是很復雜,且功能強大,支持不同數(shù)據(jù)格式的文件鑲?cè)?這也是盛行的原因之一,其主要特點如下: 簡易性,HTML版本升級采用超集方式,從而更加靈活方便。 可擴展性,HTML語言的廣泛應用帶來了加強功能,增加標識符等要求,HTML采取子類元素的方式,為系統(tǒng)擴展帶來保證。
31、 平臺無關(guān)性。雖然PC機大行其道,但使用MAC等其他機器的大有人在,HTML可以使用在廣泛的平臺上,這也是盛行的另一個原因。 CSS(Cascading Style Sheet)可譯為“層疊樣式表”或“級聯(lián)樣式表”,它定義如何顯示 HTML 元素,用于控制Web頁面的外觀。通過使用CSS實現(xiàn)頁面的內(nèi)容與表現(xiàn)形式分離,極大提高了工作效率 。樣式存儲在樣式表中,通常放在部分或存儲在外部CSS文件中。 層疊式表的特點: (1)便于頁面的修改。 (2)便于頁面風格的統(tǒng)一。 (3)減少網(wǎng)頁的體積。 1.3.4JavaScript技術(shù) Javasc
32、ript是一種由Netscape的LiveScript發(fā)展而來的原型化繼承的面向?qū)ο蟮膭討B(tài)類型的區(qū)分大小寫的客戶端腳本語言,主要目的是為了解決服務器端語言,比如Perl,遺留的速度問題,為客戶提供更流暢的瀏覽效果。當時服務端需要對數(shù)據(jù)進行驗證,由于網(wǎng)絡速度相當緩慢,只有28.8kbps,驗證步驟浪費的時間太多。于是Netscape的瀏覽器Navigator加入了Javascript,提供了數(shù)據(jù)驗證的基本功能。 JavaScript是一種基于對象和事件驅(qū)動并具有相對安全性的客戶端腳本語言。同時也是一種廣泛用于客戶端Web開發(fā)的腳本語言,常用來給HTML網(wǎng)頁添加動態(tài)功能,比如響應用戶的各種
33、操作。它最初由網(wǎng)景公司的Brendan Eich設計,是一種動態(tài)、弱類型、基于原型的語言,內(nèi)置支持類。JavaScript是Sun公司的注冊商標。[1] Ecma國際以JavaScript為基礎(chǔ)制定了ECMAScript標準。JavaScript也可以用于其他場合,如服務器端編程。完整的JavaScript實現(xiàn)包含三個部分:ECMAScript,文檔對象模型,字節(jié)順序記號。 Netscape公司在最初將其腳本語言命名為LiveScript來Netscape在與Sun合作之后將其改名為JavaScript。JavaScript最初受Java啟發(fā)而開始設計的,目的之一就是“看上去像
34、Java”[2],因此語法上有類似之處,一些名稱和命名規(guī)范也借自Java。但JavaScript的主要設計原則源自Self和Scheme[3].JavaScript與Java名稱上的近似,是當時網(wǎng)景為了營銷考慮與Sun公司達成協(xié)議的結(jié)果。為了取得技術(shù)優(yōu)勢,微軟推出了JScript來迎戰(zhàn)JavaScript的腳本語言。為了互用性,Ecma國際(前身為歐洲計算機制造商協(xié)會)創(chuàng)建了ECMA-262標準(ECMAScript)?,F(xiàn)在兩者都屬于ECMAScript的實現(xiàn)。盡管JavaScript作為給非程序人員的腳本語言,而非作為給程序人員的編程語言來推廣和宣傳,但是JavaScript具有非常豐富的特
35、性。 系統(tǒng)設計 本章主要從系統(tǒng)的目標設計、功能設計和設計思想等幾個方面闡述了系統(tǒng)的需求分析,最后通過需求分析給出了系統(tǒng)功能模塊設計與開發(fā)的環(huán)境。 2.1系統(tǒng)需求分析 系統(tǒng)需求分析是系統(tǒng)分析和設計的一個重要階段,他對系統(tǒng)提出了完整、準確、清晰、具體的要求。 2.1.1 需求概述 系統(tǒng)主要完成高校教學中的課堂考勤管理功能。教師對自己授課的教學班學生進行考勤,學生可以查看自己的考勤記錄,教務員可以管理系統(tǒng)中的所有數(shù)據(jù)。 (1)運行環(huán)境: 系統(tǒng)基本運行環(huán)境
36、為Windows環(huán)境,安裝Tomcat(Windows XP/2000),安裝Microsoft SQL Server 2000,配置好ODBC,即可在瀏覽器下可以瀏覽。 (2)條件與限制: 由于系統(tǒng)較小,且在windows系統(tǒng)下開發(fā),故在windows環(huán)境下基本沒有什么限制,只要運行環(huán)境配置正確即可。 2.1.2 系統(tǒng)設計目標 本系統(tǒng)主要完成以下功能: (1)未登錄用戶模塊實現(xiàn)了信息查找等功能; (2)學生模塊實現(xiàn)了學生信息修改、考勤查看等功能; (3)教師模塊實現(xiàn)了教師修改信息、按教學班考勤等功能; (4)教務員模塊主要實現(xiàn)了密碼修改,對學生、教師、課程、學生選課等。
37、 2.1.3 系統(tǒng)功能需求 根據(jù)系統(tǒng)設計目標,本系統(tǒng)有四種角色:未登錄用戶、學生、教師、教務員。每個角色對應一個模塊,因此從功能上可以分為對應的四個模塊,每個模塊實現(xiàn)對應角色的功能。具體功能模塊圖如圖2-1示。 課堂考勤管理系統(tǒng) 未登錄用戶 教務員模塊 學生模塊 教師模塊 密碼修改 教師信息管理 課程信息管理 學生信息管理 選課信息管理 信息查找 學生信息修改 考勤查看 教師修改信息 考勤圖2-1 系統(tǒng)功能模塊圖 2.1.4 系統(tǒng)設計思想 畢業(yè)設計采用JAVA技術(shù),以Tomcat為JAVA服務器、Microsoft SQ
38、L Server 2000 為數(shù)據(jù)庫系統(tǒng)畢業(yè)設計,建立了一個基于B/S模式的三層體系的課堂考勤管理網(wǎng)站畢業(yè)設計。 B/S本系統(tǒng)應用主要針對大學生校園的教學設計,考慮到大學生學生人數(shù)比較多,上課時間地點非常分散,而B/S模式最大的好處是運行維護比較簡便,能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式訪問和操作共同的數(shù)據(jù),因此系統(tǒng)更適合用B/S模式構(gòu)建,而不去考慮它對校園外部網(wǎng)絡環(huán)境依賴性太強的缺點,因為大學校園網(wǎng)絡條件很好,即使偶有網(wǎng)絡中斷,考勤也不是非常重要,考勤也可暫停。另外從投入成本比較、硬件投資保護比較、數(shù)據(jù)安全性比較、數(shù)據(jù)一致性比較、服務響應及時性比較、網(wǎng)絡應用限制比較等方面也很容
39、易得出就此系統(tǒng)而言B/S模式比較優(yōu)越。 選用java的原因: (1)類型安全。 泛型的主要目標是提高 Java 程序的類型安全。通過知道使用泛型定義的變量的類型限制,編譯器可以在一個高得多的程度上驗證類型假設。沒有泛型,這些假設就只存在于程序員的頭腦中(或者如果幸運的話,還存在于代碼注釋中)。(2)消除強制類型轉(zhuǎn)換。 泛型的一個附帶好處是,消除源代碼中的許多強制類型轉(zhuǎn)換。這使得代碼更加可讀,并且減少了出錯機會。(3)潛在的性能收益。 泛型為較大的優(yōu)化帶來可能。在泛型的初始實現(xiàn)中,編譯器將強制類型轉(zhuǎn)換(沒有泛型的話,程序員會指定這些強制類型轉(zhuǎn)換)插入生成的字節(jié)碼中。但是更多類型信息可用于編譯器
40、這一事實,為未來版本的 JVM 的優(yōu)化帶來可能。由于泛型的實現(xiàn)方式,支持泛型(幾乎)不需要 JVM 或類文件更改。所有工作都在編譯器中完成,編譯器生成類似于沒有泛型(和強制類型轉(zhuǎn)換)時所寫的代碼,只是更能確保類型安全而已。2.2 系統(tǒng)環(huán)境配置做好系統(tǒng)需求分析之后,我們應該選擇系統(tǒng)開發(fā)的環(huán)境去實現(xiàn)系統(tǒng)的功能。 下載安裝Sysdeo Tomcat插件,用來管理Tomcat服務器,提供斷點調(diào)試功能,并且能自動建立Tomcat環(huán)境,修改其配置文件,是一個不錯的Tomcat開發(fā)插件。 網(wǎng)頁開發(fā)離不開HTML技術(shù),HTML制作靜態(tài)的網(wǎng)頁的框架和頁面,再加上CSS技術(shù)和JavaScript這樣的腳
41、本語言,使得網(wǎng)頁漂亮、個性。 因為系統(tǒng)采用B/S模式,因此必須選擇一個網(wǎng)頁編程技術(shù),像JSP,PHP,JAVA這樣的技術(shù)。 數(shù)據(jù)庫設計與實現(xiàn) 本章簡單介紹了Microsoft SQL Server 2000,然后著重闡述了數(shù)據(jù)庫的需求分析,邏輯設計及優(yōu)化和數(shù)據(jù)庫表的創(chuàng)建,詳細地介紹了系統(tǒng)數(shù)據(jù)庫的分析、設計及其實現(xiàn)的過程。 3.1 Microsoft SQL Server2000 簡介Mi
42、crosoft SQL Server 2000是由微軟Microsoft出品,基于關(guān)系型數(shù)據(jù)庫的大型數(shù)據(jù)庫系統(tǒng)。它具有獨立于硬件平臺、對稱的多處理器結(jié)構(gòu)、搶占式多任務管理、完善的安全系統(tǒng)和容錯功能,并具有易于維護的特點。同時又比它的增加了許多更先進的功能、具有使用方便、可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點。 Microsoft SQL Server 2000有如下主要特點: (1)具有豐富的圖形管理工具。 (2)動態(tài)自動管理和優(yōu)化。系統(tǒng)在運行過程中可根據(jù)運行時的狀態(tài)自動配置參數(shù)。 (3)支持XML、HTTP。通過XML可訪問Microsoft SQL Server服務器。 (4)豐富的編程接
43、口。Transact-SQL、DB-Library for C、嵌入式SQL。 (5)具有良好的伸縮性和可靠性??蛇\行在多種操作系統(tǒng)下;可運行在?CPU或?qū)ΨQ多CPU環(huán)境下。 (6)簡單的管理方式。SQL Server具有較好的管理工具外,還可與操作系統(tǒng)有機集成,利用操作系統(tǒng)提供的服務和功能管理SQL Server系統(tǒng)。 3.2 數(shù)據(jù)庫需求分析 系統(tǒng)中的實體有:學生、教師、課程、教務員。 關(guān)系有:學生修課,教師授課。 校園風景實體E-R圖如圖3-1示 校園風景 圖3-1校園圖片實體E-R圖 教務員實體E-R圖如圖3-2示 教務員 圖3-2 教務員實體E-R圖 學生
44、實體E-R圖如圖3-3示 學生圖3-3學生實體E-R圖 教師實體E-R圖如圖3-4示 教師 圖3-4教師實體E-R圖 課程實體E-R圖如圖3-5示 課程 圖3-5課程實體E-R圖 (6)學院實體E-R圖如圖3-6示 學院圖3-6課程實體E-R圖 教師、學生、課程之間關(guān)系的E-R圖。 教師和課程之間是1對n的講授關(guān)系,,也就是說一名老師可以講授多門課程;學生修課既和老師有關(guān)又和課程有關(guān),即學生和講授關(guān)系有關(guān),將講授和其對應的實體-教師和課程作為一個聚集。學生與此聚集之間有1對M的修課關(guān)系,即一名學生可以修多門課程。E-R圖如圖3-7示。
45、 教師 教師 學生 圖3-7 教師、學生、課程之間關(guān)系E-R圖 3.3 數(shù)據(jù)庫邏輯設計 數(shù)據(jù)庫的邏輯設計就是把E-R圖轉(zhuǎn)化為所選用地數(shù)據(jù)模型。本系統(tǒng)數(shù)據(jù)庫系統(tǒng)為SQL Server 2000,因此將E-R模型轉(zhuǎn)化為關(guān)系數(shù)據(jù)模型即可。 學生(學號,學生名,性別,出生年月,電話,學院,專業(yè),班級); 教師教師編號,教師名,性別,電話,院系,密碼;
46、 課程(課程編號,課程名,學分,上課時間,上課地點); 學院(學院名稱,系別名稱); 教授(課程代碼,教師編號,課程編號,教學班號,開課時間); 修課考勤(課程代碼,學號,課程編號,教師編號,教學班號,早退,遲到,曠課,請假)。 3.4 數(shù)據(jù)庫結(jié)構(gòu)創(chuàng)建 數(shù)據(jù)庫采用Microsoft SQL Server 2000,利用SQL語言,通過查詢分析器可以創(chuàng)建數(shù)據(jù)庫和建立數(shù)據(jù)表,通過企業(yè)管理器也可以方便的管理數(shù)據(jù)庫。 3.4.1 建立數(shù)據(jù)表 通過SQL語句在查詢分析器
47、下邊可以方便的建立數(shù)據(jù)庫以及數(shù)據(jù)表。在查詢分析器中分別建立教務員信息表(ADMIN)、學生信息表(STU_INF)、教師信息表(TEA_INF)、課程信息表(COU_INF)、學生修課考勤表(ATT_INF)。 下邊僅以創(chuàng)建修課考勤表為例: CREATE TABLE ATT_INF -- 修課考勤表 idINTIDENTITY 1,1 PRIMARY KEY , --自動編號 cou_cod INTNOT NULL, --課程代碼 cou_numCHAR8 NOT NULL, --課程編號 cou_namVARCHAR20NOT
48、NULL, --課程名稱 tea_num CHAR8 NOT NULL,--教師編號 tea_nam VARCHAR8NOT NULL,--教師姓名 stu_num CHAR8 NOT NULL,--學生編號 stu_nam VARCHAR8NOT NULL,--學生姓名 cla_num SMALLINT NOT NULL,--教學班號 cou_cre NUMERIC2,1 NOT NULL,--課程學分 leave_early TINYINT NOT NULL,--早退次數(shù) late TINYINT
49、NOT NULL,--遲到次數(shù) absentTINYINT NOT NULL,--缺席次數(shù) attTINYINT NOT NULL,--到勤次數(shù) leave TINYINT NOT NULL,--請假次數(shù) CONSTRAINT FK_atea_con --創(chuàng)建FK_atea_con外鍵約束 FOREIGN KEY tea_num --tea_num參考表TEA_INF(教師信息表 REFERENCES tea_inftea_num --中的tea_num項 ON UPDATE CASCADE --更新時級聯(lián)更新
50、 ON DELETE NO ACTION , --刪除時沒有動作 CONSTRAINT FK_astu_con --創(chuàng)建FK_astu_con外鍵約束 FOREIGN KEY stu_num--stu_num參考STU_INF(學生信息表 REFERENCES stu_infstu_num--中的stu_num項 ON UPDATE CASCADE --更新時級聯(lián)更新 ON DELETE NO ACTION, --刪除時沒有動作 CONSTRAINT FK_acou_con--創(chuàng)建FK_acou_con外鍵約束
51、 FOREIGN KEY cou_cod--cou_num參考表TEA_INF(學生信息表 REFERENCES cou_infcou_cod --中的cou_num項 ON UPDATE NO ACTION--更新時沒有動作 ON DELETE NO ACTION , --刪除時沒有動作 教務員信息表存貯教務員的用戶名、姓名還有密碼,因為密碼要經(jīng)過MD5加密,所以密碼長度為50。表結(jié)構(gòu)如表3-1示。 表3-1教務員信息表 ADMIN 教師信息表存貯教師的基本信息,主要包括教師編號、教師姓名、性別、所
52、在學院、電話、登錄密碼。表結(jié)構(gòu)如表3-2所示。 表3-2 教師信息表 TEA_INF 學生信息表記錄了學生的基本信息,包括學號、學生姓名、性別、出生年月、電話、學院、專業(yè)、年級,還有密碼。表的詳細結(jié)構(gòu)如表3-3所示。 表3-3學生信息表 STU_INF 學院專業(yè)信息表主要記錄學院和對應的專業(yè),包括學院名和專業(yè)名。因為記錄數(shù)量比較少,所以不設主鍵。表結(jié)構(gòu)如圖3-4所示。 表3-4 學院專業(yè)信息表 MAJOR 程信息表記錄了課程的基本信息,包括課程代碼、課程編號、授課教師編號、姓名、教學班號、學分、開課院系、開課周,上課時間。表結(jié)構(gòu)如表3-5所
53、示。 表3-5 課程信息表 COU_INF 校園風景信息表主要是記錄校園風景圖片的信息,主要包括圖片編號,圖片名稱和圖片上傳的時間。表的結(jié)構(gòu)如表3-6所示。 表3-6 校園風景信息表 PIC_INF 學生修課信息表是整個系統(tǒng)的關(guān)鍵表,記錄了學生的考勤記錄。主要字段有學號、學生姓名、課程編號、課程名稱、教師編號、教師姓名、教學班號、學分、早退次數(shù)、遲到次數(shù)、曠課次數(shù)、請假次數(shù)、出勤次數(shù)。表結(jié)構(gòu)如圖3-7所示。 表3-7學生修課考勤表 ATT_INF 3.4.2 數(shù)據(jù)表間關(guān)系 數(shù)據(jù)表建立好之后,我們可以在企業(yè)管理器中查看表之間的關(guān)系
54、。本系統(tǒng)數(shù)據(jù)庫建立好之后,可以看見數(shù)據(jù)庫間的關(guān)系如圖3-8所示。由圖可知:pic_inf校園風景表、admin教務員信息表是2個獨立的表,他們各自和其他的表沒有直接的關(guān)系,而tea_inf(教師信息表)、cou_inf課程信息表、stu_inf(學生信息表)、att_inf(修課考勤信息表)之間有關(guān)系存在。 圖3-8數(shù)據(jù)表間關(guān)系圖 系統(tǒng)詳細設計 本章詳細介紹了系統(tǒng)的編碼實現(xiàn)過程。按照功能模塊分別介紹了未登錄用戶、學生用戶、教師用戶、教務員用戶等四個功能模塊設計,著重介紹了系統(tǒng)編碼實現(xiàn)中的難點 和重點。 4.1 用戶登錄 登陸界面主要是
55、2個文本框分別輸入用戶名和密碼,一個下拉框選擇登陸類型。界面如圖4-1所示,程序如下示。 form method"post" action"login_check.asp" name"login" onSubmit"return checkthis" 用戶名:input type"text" name"username" size"13" tabindex"1"length"8"classsamllInput密碼:input type"password" name"password" size"13" tabindex"2" length"15" classsamllInput類型:se
56、lect size"1" name"kind" tabindex"3" class"smallInput"option selected value"學生"學生教師 input type"submit" value"提交" name"B1" tabindex"4" class"smallInput" input type"reset" value"重置" name"B2" tabindex"5" class"smallInput"action"login_check.asp" :數(shù)據(jù)后login_check.asp處理數(shù)據(jù) ; onSubmit"return checkthis" :點擊提
57、交按鈕之后,返回check函數(shù)值 name"username ":設置文本框或下拉框的名字; length "8": 設置可輸入的最大長度為8; tabindex"2":設置tab鍵的順序為2; class"samllInput" 設置文本框的樣式位samllInput,samllInput是css文件中設置的一個文本框的樣式類。 圖4-1 用戶登錄界面 用戶登錄先經(jīng)過javascript函數(shù)驗證,驗證成功則進行服務器驗證,否則就提示用戶有錯誤。用戶登錄流程如圖4-2示。 圖4-2 用戶登錄流程 4.1.1 不訪問服務JavaScript器函數(shù)驗證 J
58、avaScript語言可以實現(xiàn)不用訪問服務器就可以對從用戶提交來的數(shù)據(jù)進行有效性驗證。登陸的驗證通過以下checkform函數(shù)進行驗證。OnSubmit"return checkthis"實現(xiàn)當用戶點擊提交之后,調(diào)用checkform進行數(shù)據(jù)驗證,驗證錯誤,返回false,彈出一個信息框,提示用戶數(shù)據(jù)輸入有誤,用戶輸入的數(shù)據(jù)不會提交給服務器,這樣可以節(jié)約用戶上網(wǎng)效率,減少WEB服務器的負擔。具體checkform函數(shù)程序如下。 Function check form var //.ue.replace/^\s+|\s+$/g,"";//定義user變量,利用正則去空格 var //.ue
59、.replace/^\s+|\s+$/g,"";//定義pwd變量,利用正則去空格 if user"" | pwd"" //如果用戶名或者密碼為空alert"用戶名或密碼不能為空!";//提示錯誤信息return false; //返回false else if user.length!8 | user.search/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/gi-1 //如果用戶名長度不為8,或者不為9個數(shù)字alert"用戶名格式不正確,只能為8位數(shù)字"; //提示錯誤信息return false;//返回false else retu
60、rn true; //數(shù)據(jù)符合,返回true,數(shù)據(jù)提交給web服務器 運行過程中,當用戶沒有輸入信息、或輸入信息不全、或者用戶名或空格輸入的都是空格,提示如圖4-3示。 圖4-3 用戶提示 當用戶名不為8位數(shù)字(教師編號和學號只能為8位數(shù)字),提示如圖4-4示。 圖4-4 用戶提示 4.1.2 登陸服務器訪問驗證 先讀取用戶提交的用戶名、密碼和用戶類型,并且去掉空格,然后對密碼進行MD5加密。根據(jù)用戶類型在對應的表中查找是否有符合的數(shù)據(jù),沒有查找到就給用戶提示,返回首頁,以便用戶重新登陸。如果找了符合的數(shù)據(jù),設置session“username”為用戶名,session
61、"user"為用戶姓名,根據(jù)用戶登錄類型設置session"pass"。 !--#include file"conn.asp"-- !--#include file"md5.asp"-- %‘conn.asp為數(shù)據(jù)庫連接文件,md5.asp為MD5加密文件 usernametrimrequest"username" ‘讀取用戶提交的用戶名,trim去空格 passwordmd5trimrequest"password"‘讀取用戶提交的密碼,去空格,MD5加密 kindrequest"kind"‘讀取用戶類型 if kind"學生" then ‘如果用
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應急救援安全知識競賽試題
- 1 礦井泵工考試練習題含答案
- 2煤礦爆破工考試復習題含答案
- 1 各種煤礦安全考試試題含答案