




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 2012屆本科生畢業論文學 號:080501050102 成 績: 課堂考勤管理系統的設計 院 部: 計算機科學與技術學院 專 業:計算機科學與技術 姓 名: 王 倩 指導教師: 陳 強二?一二年四月 畢業論文誠信聲明 本人鄭重聲明: 所呈交的畢業論文課堂考勤管理系統的設計是本人在指導老師的指導下,獨立研究、寫作的成果。論文中所引用是他人的無論以何種方式發布的文字、研究成果,均在論文中以明確方式標明。 本聲明的法律結果由本人獨自承擔。 畢業論文作者簽名: 王 倩 2012 年 月 日摘 要 本系統采用java技術,以tomcat為java服務器、microsoft sql server 20
2、00 為數據庫系統,建立了一個基于b/s模式的三層體系的課堂考勤管理網站系統,以加強課堂考勤管理,提高課堂教學質量。 本系統基于java技術建立的課堂考勤管理畢業設計,其目標是完成高校教學中課堂考勤管理。系統主要包括未登錄用戶模塊、學生模塊、教師模塊、教務員模塊四個功能模塊。其中未登錄用戶模塊實現了信息查找等功能;學生模塊實現了學生信息修改、考勤查看等功能;教師模塊實現了教師修改信息、按教學班考勤等功能;教務員模塊主要實現了密碼修改,對學生、教師、課程、學生選課等。【關鍵詞】java;數據庫;b/s模式;考勤abstract the system using the java techonlo
3、gy,taking tomcat as the java server,microsoft sql server 2000 as the database system,has established the website system of classroom checking attendance manages which is based on b/s pattern.in order to enhance classroom attendance management, improve the quality of classroom teachingthe classroom c
4、hecking attendance management system is based on java technology.its goal is completing the classroom checking attendance in universities.the system mainly includes four modules.they are the user not registered module,student module,teacher module and educational administration personnel module. the
5、 system mainly includes four modules.they are the user not registered module,student module,teacher module and educational administration 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
6、 as modifying student information and observing the results of checking attendance;the teacher module realized the teacher to 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 c
7、ourse to manage.【關鍵詞】java;database;b/spattern;checking attendant目 錄緒論 1.1開發背景 11.1.1 課題研究內容和意義2 1.2可執行性分析21.3技術分析31.3.1b/s模式31.3.2java技術 41.3.36html和css 61.3.4javascript技術 7系統設計2.1系統需求分析92.1.1 需求概述9 2.1.2 系統設計目標92.1.3 系統功能需求10 2.1.4 系統設計思想112.2 系統環境配置 11數據庫設計與實現 3.1 microsoft sql server2000 簡介 13 3.
8、2 數據庫需求分析133.3 數據庫邏輯設計17 3.4 數據庫結構創建 173.4.1 建立數據表18 3.4.2 數據表間關系22系統詳細設計 4.1 用戶登錄23 4.1.1 不訪問服務javascript器函數驗證 254.1.2 登陸服務器訪問驗證26 4.2 學生功能模塊設計28 4.2.1 學生信息修改28 4.2.2 考勤查看30 4.3 教師功能模塊設計304.4 教務員功能模塊設計33 4.4.1 學生、教師、課程、學生選課管理33第5章 結 論 35致 謝 36參考文獻 37附 錄 39 緒 論 internet是目前世界上最大的計算機互聯網絡,他遍布全球,將世界各地各種
9、規模的網絡連接成一個整體。作為internet上一種先進的,易于被人們所接受的信息檢索手段。java是由sun microsystems公司于1995年5月推出的java程序設計語言(以下簡稱java語言)和java平臺的總稱。用java實現的hotjava瀏覽器(支持java applet)顯示了java的魅力:跨平臺、動感的web、internet計算。從此,java被廣泛接受并推動了web的迅速發展,常用的瀏覽器現在均支持java applet。另一方面,java技術也不斷更新。 1.1開發背景 目前社會上信息管理系統發展飛快,各個學校都引入了信息管理軟件來管理自己日益增長的各種信息,考
10、勤管理系統也是有了很大的發展,商業化得學校信息管理軟件也不少。而目前學校的這項工作還處于半手工福安里階段,信息資源的的數字化程度低,大部分歷史積累的數據,尚未數字化。不利于科學福安里和決策。 高校學生上課考勤管理都是以任課老師上課點名,記錄學生上課出勤情況,學期末根據上課出勤表及作業登記表對學生平時成績打分,然后把數據上交到各院系。學生請假以傳統的寫請假條的形式向各自班主任請假,時間長的請假,要班主任、院系領導都批準方能生效。這種的模式在目前高校管理中暴露出了許多弊端:一是學生請假不方便;二是學生請假對任課老師不透明,造成對學生上課出勤誤記的情況;三是學生上課出勤表對班主任不透明,班主任很難知
11、道本班學生上課的出勤情況,不便于與學生及時有效的溝通;四是學生對自己整個學期的上課出勤情況沒有整體的統計信息。五是院系領導、學校領導更加把握不住學生上課的出勤情況。1.1.1 課題研究內容和意義 課堂是學生學習的主要場所,課堂學習是學生獲取知識、培養能力、提高素質的主渠道。抓好課堂考勤是創造良好學習氛圍,形成良好班風學風的必要條件。而在當前各高校學生上課較以前分散,課堂、教室的流動性使得班級概念相對弱化,班主任、輔導員、班干部對學生的上課情況的了解和掌握較弱,同時部分教師淡化課堂考勤,導致一些學生利用課堂考勤監控不嚴而長期曠課。課堂教學的新特點使傳統的課堂考勤制度遇到嚴峻的挑戰。作為計算機應用
12、的一部分,使用計算機對學生課堂考勤信息進行管理,據有以下優點:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優點能夠極大地提高效率,也是學校科學化、正規化管理的重要條件。 因此,開發這樣一套管理軟件成為很必要的事情。 1.2可執行性分析 (1)技術可行性 本系統僅需要一臺裝有microsoft sql server 2000的計算機即可,對機器本身沒有太高的要求,一般當前學校或個人電腦完全可滿足要求。對于軟件技術要求,現在的程序設計語言已非常成熟,采用b/s模式,利用java技術,使用sql server 2000 中提供的數據庫。所以在技術上完全可行。 經濟可行性
13、由于本系統是高校課堂考勤管理的系統,只要電腦聯入互聯網,即可使用系統,系統成本主要集中在系統開發上,當系統投入運行后可以為學校節約大量的人力,物力,提高學校的考勤效率。所帶來的效益遠遠大于系統軟件的開發成本,在經濟上完全可行。 操作可行性 界面設計時充分考慮管理人員的習慣,使得操作簡單;數據錄入迅速、規范、可靠;統計準確;制表靈活;適應力強;容易擴充。所以系統操作上完全可行。1.3技術分析 本系統結構為b/s模式,采用java技術。網頁制作技術采用html,采用javascript和css技術,使得網頁操作方便、快捷,而且界面美觀、個性。1.3.1b/s模式 b/s(browser/serve
14、r,瀏覽器/服務器)模式又稱b/s結構。它是隨著internet技術的興起,對c/s模式應用的擴展。在這種結構下,用戶工作界面是通過ie瀏覽器來實現的。b/s模式最大的好處是運行維護比較簡便,能實現不同的人員,從不同的地點,以不同的接入方式(比如lan, wan, internet/intranet等)訪問和操作共同的數據;最大的缺點是對企業外網環境依賴性太強,由于各種原因引起企業外網中斷都會造成系統癱瘓。 隨著internet和的流行,以往的主機/終端和c/s都無法滿足當前的全球網絡開放、互連、信息隨處可見和信息共享的新要求,于是就出現了b/s型模式,即瀏覽器/服務器結構。b/s模式最大特點
15、是:用戶可以通過瀏覽器去訪問internet上的文本、數據、圖像、動畫、視頻點播和聲音信息,這些信息都是由許許多多的web服務器產生的,而每一個web服務器又可以通過各種方式與數據庫服務器連接,大量的數據實際存放在數據庫服務器中。客戶端除了瀏覽器,一般無須任何用戶程序,只需從web服務器上下載程序到本地來執行,在下載過程中若遇到與數據庫有關的指令,由web服務器交給數據庫服務器來解釋執行,并返回給web服務器,web服務器又返回給用戶。在這種結構中,將許許多多的網連接到一塊,形成一個巨大的網,即全球網。而各個企業可以在此結構的基礎上建立自己的internet。 b/s結構的優點: 具有分布性特
16、點,可以隨時隨地進行查詢、瀏覽等業務處理。 業務擴展簡單方便,通過增加網頁即可增加服務器功能。 維護簡單方便,只需要改變網頁,即可實現所有用戶的同步更新。 開發簡單,共享性強 1.3.2java技術java是一種可以撰寫跨平臺應用軟件的面向對象的程序設計語言,是由sun microsystems公司于1995年5月推出的java程序設計語言和java平臺(即javase, javaee, javame)的總稱。java 技術具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應用于個人pc、數據中心、游戲控制臺、科學超級計算機、移動電話和互聯網,同時擁有全球最大的開發者專業社群。在全球云計算和移
17、動互聯網的產業環境下,java更具備了顯著優勢和廣闊前景。 java 編程語言的風格十分接近c、c+ 語言。java是一個純的面向對象的程序設計語言,它繼承了 c+ 語言面向對象技術的核心,java舍棄了c +語言中容易引起錯誤的指針(以引用取代)、運算符重載(operator overloading)、多重繼承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的對象所占據的內存空間,使得程序員不用再為內存管理而擔憂。在 java se 1.5 版本中,java 又引入了泛型編程(generic programming)、類型安全的枚舉、不定長參數和自動裝/拆箱等語言特性。 java
18、 不同于一般的編譯執行計算機語言和解釋執行計算機語言。它首先將源代碼編譯成二進制字節碼bytecode,然后依賴各種不同平臺上的虛擬機來解釋執行字節碼,從而實現了“一次編譯、到處執行”的跨平臺特性。不過,每次的編譯執行需要消耗一定的時間,這同時也在一定程度上降低了 java 程序的運行效率。 java的主要特性: (1)java語言是簡單的。java語言的語法與c語言和c+語言很接近,使得大多數程序員很容易學習和使用java。另一方面,java丟棄了c+ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉換。特別地,java語言不使用指針,并提供了自動的廢料收
19、集,使得程序員不必為內存管理而擔憂。 (2)java語言是一個面向對象的。java語言提供類、接口和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實現機制(關鍵字為implements)。java語言全面支持動態綁定,而c+ 語言只對虛函數使用動態綁定。總之,java語言是一個純的面向對象程序設計語言。 (3)java語言是分布式的。java語言支持internet應用的開發,在基本的java應用編程接口中有一個網絡應用編程接口(java net),它提供了用于網絡應用編程的類庫,包括url、urlconnection、socket、servers
20、ocket等。java的rmi遠程方法激活機制也是開發分布式應用的重要手段。 (4)java語言是健壯的。java的強類型機制、異常處理、廢料的自動收集等是java程序健壯性的重要保證。對指針的丟棄是java的明智選擇。java的安全檢查機制使得java更具健壯性。 (5)java語言是安全的。java通常被用在網絡環境中,為此,java提供了一個安全機制以防惡意代碼的攻擊。除了java語言具有的許多安全特性以外,java對通過網絡下載的類具有一個安全防范機制(類classloader),如分配不同的名字空間以防替代本地的同名類、字節代碼檢查,并提供安全管理機制(類securitymanage
21、r)讓java應用設置安全哨兵。 (6)java語言是體系結構中立的。java程序(后綴為java的文件)在java平臺上被編譯為體系結構中立的字節碼格式(后綴為class的文件), 然后可以在實現這個java平臺的任何系統中運行。這種途徑適合于異構的網絡環境和軟件的分發。 (7)java語言是可移植的。這種可移植性來源于體系結構中立性,另外,java還嚴格規定了各個基本數據類型的長度。java系統本身也具有很強的可移植性,java編譯器是用java實現的,java的運行環境是用ansi c實現的。 (8)java語言是解釋型的。如前所述,java程序在java平臺上被編譯為字節碼格式,然后可
22、以在實現這個java平臺的任何系統中運行。在運行時,java平臺中的java解釋器對這些字節碼進行解釋執行,執行過程中需要的類在聯接階段被載入到運行環境中。 (9)java是高性能的。與那些解釋型的高級腳本語言相比,java的確是高性能的。事實上,java的運行速度隨著jitjust-in-time編譯器技術的發展越來越接近于c+。 (10)java語言是多線程的。在java語言中,線程是一種特殊的對象,它必須由thread類或其子(孫)類來創建。通常有兩種方法來創建線程:其一,使用型構為threadrunnable 的構造子將一個實現了runnable接口的對象包裝成一個線程,其二,從thr
23、ead類派生出子類并重寫run方法,使用該子類創建的對象即為線程。值得注意的是thread類已經實現了runnable接口,因此,任何一個線程均有它的run方法,而run方法中包含了線程所要運行的代碼。線程的活動由一組方法來控制。java語言支持多個線程的同時執行,并提供多線程之間的同步機制(關鍵字為synchronized)。 (11)java語言是動態的。java語言的設計目標之一是適應于動態變化的環境。java程序需要的類能夠動態地被載入到運行環境,也可以通過網絡來載入所需要的類。這也有利于軟件的升級。另外,java中的類有一個運行時刻的表示,能進行運行時刻的類型檢查。 java語言的優
24、良特性使得java應用具有無比的健壯性和可靠性,這也減少了應用系統的維護費用。java對對象技術的全面支持和java平臺內嵌的api能縮短應用系統的開發時間并降低成本。java的編譯一次,到處可運行的特性使得它能夠提供一個隨處可用的開放結構和在多平臺之間傳遞信息的低成本方式。1.3.3html和css 文本標記語言,即html(hypertext markup language),是用于描述網頁文檔的一種標記語言。 超文本標記語言在上的一個超媒體文檔稱之為一個頁面(page)。作為一個組織或個人在萬維網上放置開始點的頁面稱為主頁homepage,或首頁,主頁中通常包括有指向其他相關頁面或其他節
25、點的指針(超級鏈接)。在邏輯上將視為一個整體的一系列頁面的有機集合稱為網站(website或site)。 html是一種規范,一種標準,它通過標記符號來標記要顯示的網頁中的各個部分。網頁文件本身是一種文本文件,通過在文本文件中添加標記符,可以告訴瀏覽器如何顯示其中的內容(如:文字如何處理,畫面如何安排,圖片如何顯示等)。瀏覽器按順序閱讀網頁文件,然后根據標記符解釋和顯示其標記的內容,對書寫出錯的標記將不指出其錯誤,且不停止其解釋執行過程,編制者只能通過顯示效果來分析出錯原因和出錯部位。但需要注意的是,對于不同的瀏覽器,對同一標記符可能會有不完全相同的解釋,因而可能會有不同的顯示效果。 html
26、之所以稱為超文本標記語言,是因為文本中包含了所謂“超級鏈接”點。所謂超級鏈接,就是一種url指針,通過激活(點擊)它,可使瀏覽器方便地獲取新的網頁。這也是html獲得廣泛應用的最重要的原因之一。 html文檔制作不是很復雜,且功能強大,支持不同數據格式的文件鑲入,這也是盛行的原因之一,其主要特點如下: 簡易性,html版本升級采用超集方式,從而更加靈活方便。 可擴展性,html語言的廣泛應用帶來了加強功能,增加標識符等要求,html采取子類元素的方式,為系統擴展帶來保證。 平臺無關性。雖然pc機大行其道,但使用mac等其他機器的大有人在,html可以使用在廣泛的平臺上,這也是盛行的另一個原因。
27、 css(cascading style sheet)可譯為“層疊樣式表”或“級聯樣式表”,它定義如何顯示 html 元素,用于控制web頁面的外觀。通過使用css實現頁面的內容與表現形式分離,極大提高了工作效率 。樣式存儲在樣式表中,通常放在部分或存儲在外部css文件中。 層疊式表的特點: (1)便于頁面的修改。 (2)便于頁面風格的統一。 (3)減少網頁的體積。1.3.4javascript技術 javascript是一種由netscape的livescript發展而來的原型化繼承的面向對象的動態類型的區分大小寫的客戶端腳本語言,主要目的是為了解決服務器端語言,比如perl,遺留的速度問題
28、,為客戶提供更流暢的瀏覽效果。當時服務端需要對數據進行驗證,由于網絡速度相當緩慢,只有28.8kbps,驗證步驟浪費的時間太多。于是netscape的瀏覽器navigator加入了javascript,提供了數據驗證的基本功能。 javascript是一種基于對象和事件驅動并具有相對安全性的客戶端腳本語言。同時也是一種廣泛用于客戶端web開發的腳本語言,常用來給html網頁添加動態功能,比如響應用戶的各種操作。它最初由網景公司的brendan eich設計,是一種動態、弱類型、基于原型的語言,內置支持類。javascript是sun公司的注冊商標。1 ecma國際以javascript為基礎制
29、定了ecmascript標準。javascript也可以用于其他場合,如服務器端編程。完整的javascript實現包含三個部分:ecmascript,文檔對象模型,字節順序記號。 netscape公司在最初將其腳本語言命名為livescript來netscape在與sun合作之后將其改名為javascript。javascript最初受java啟發而開始設計的,目的之一就是“看上去像java”2,因此語法上有類似之處,一些名稱和命名規范也借自java。但javascript的主要設計原則源自self和scheme3.javascript與java名稱上的近似,是當時網景為了營銷考慮與sun公
30、司達成協議的結果。為了取得技術優勢,微軟推出了jscript來迎戰javascript的腳本語言。為了互用性,ecma國際(前身為歐洲計算機制造商協會)創建了ecma-262標準(ecmascript)。現在兩者都屬于ecmascript的實現。盡管javascript作為給非程序人員的腳本語言,而非作為給程序人員的編程語言來推廣和宣傳,但是javascript具有非常豐富的特性。 系統設計 本章主要從系統的目標設計、功能設計和設計思想等幾個方面闡述了系統的需求分析,最后通過需求分析給出了系統功能模塊設計與開發的環境。 2.1系統需求分析 系統需求分析是系統分析和設計的一個重要階段,他對系統提
31、出了完整、準確、清晰、具體的要求。 2.1.1 需求概述 系統主要完成高校教學中的課堂考勤管理功能。教師對自己授課的教學班學生進行考勤,學生可以查看自己的考勤記錄,教務員可以管理系統中的所有數據。 (1)運行環境: 系統基本運行環境為windows環境,安裝tomcat(windows xp/2000),安裝microsoft sql server 2000,配置好odbc,即可在瀏覽器下可以瀏覽。(2)條件與限制:由于系統較小,且在windows系統下開發,故在windows環境下基本沒有什么限制,只要運行環境配置正確即可。2.1.2 系統設計目標本系統主要完成以下功能:(1)未登錄用戶模塊
32、實現了信息查找等功能;(2)學生模塊實現了學生信息修改、考勤查看等功能;(3)教師模塊實現了教師修改信息、按教學班考勤等功能;(4)教務員模塊主要實現了密碼修改,對學生、教師、課程、學生選課等。2.1.3 系統功能需求 根據系統設計目標,本系統有四種角色:未登錄用戶、學生、教師、教務員。每個角色對應一個模塊,因此從功能上可以分為對應的四個模塊,每個模塊實現對應角色的功能。具體功能模塊圖如圖2-1示。 課堂考勤管理系統 未登錄用戶教務員模塊學生模塊教師模塊 密碼修改教師信息管理課程信息管理學生信息管理選課信息管理信息查找學生信息修改考勤查看教師修改信息考勤圖2-1 系統功能模塊圖2.1.4 系統
33、設計思想 畢業設計采用java技術,以tomcat為java服務器、microsoft sql server 2000 為數據庫系統畢業設計,建立了一個基于b/s模式的三層體系的課堂考勤管理網站畢業設計。 b/s本系統應用主要針對大學生校園的教學設計,考慮到大學生學生人數比較多,上課時間地點非常分散,而b/s模式最大的好處是運行維護比較簡便,能實現不同的人員,從不同的地點,以不同的接入方式訪問和操作共同的數據,因此系統更適合用b/s模式構建,而不去考慮它對校園外部網絡環境依賴性太強的缺點,因為大學校園網絡條件很好,即使偶有網絡中斷,考勤也不是非常重要,考勤也可暫停。另外從投入成本比較、硬件投資
34、保護比較、數據安全性比較、數據一致性比較、服務響應及時性比較、網絡應用限制比較等方面也很容易得出就此系統而言b/s模式比較優越。 選用java的原因: (1)類型安全。 泛型的主要目標是提高 java 程序的類型安全。通過知道使用泛型定義的變量的類型限制,編譯器可以在一個高得多的程度上驗證類型假設。沒有泛型,這些假設就只存在于程序員的頭腦中(或者如果幸運的話,還存在于代碼注釋中)。(2)消除強制類型轉換。 泛型的一個附帶好處是,消除源代碼中的許多強制類型轉換。這使得代碼更加可讀,并且減少了出錯機會。(3)潛在的性能收益。 泛型為較大的優化帶來可能。在泛型的初始實現中,編譯器將強制類型轉換(沒有
35、泛型的話,程序員會指定這些強制類型轉換)插入生成的字節碼中。但是更多類型信息可用于編譯器這一事實,為未來版本的 jvm 的優化帶來可能。由于泛型的實現方式,支持泛型(幾乎)不需要 jvm 或類文件更改。所有工作都在編譯器中完成,編譯器生成類似于沒有泛型(和強制類型轉換)時所寫的代碼,只是更能確保類型安全而已。2.2 系統環境配置做好系統需求分析之后,我們應該選擇系統開發的環境去實現系統的功能。 下載安裝sysdeo tomcat插件,用來管理tomcat服務器,提供斷點調試功能,并且能自動建立tomcat環境,修改其配置文件,是一個不錯的tomcat開發插件。 網頁開發離不開html技術,ht
36、ml制作靜態的網頁的框架和頁面,再加上css技術和javascript這樣的腳本語言,使得網頁漂亮、個性。 因為系統采用b/s模式,因此必須選擇一個網頁編程技術,像jsp,php,java這樣的技術。 數據庫設計與實現 本章簡單介紹了microsoft sql server 2000,然后著重闡述了數據庫的需求分析,邏輯設計及優化和數據庫表的創建,詳細地介紹了系統數據庫的分析、設計及其實現的過程。 3.1 microsoft sql server2000 簡介microsoft sql server 2000是由微軟microsoft出品,基于關系型數據庫的大型數據庫系統。它具有獨立于硬件平臺
37、、對稱的多處理器結構、搶占式多任務管理、完善的安全系統和容錯功能,并具有易于維護的特點。同時又比它的增加了許多更先進的功能、具有使用方便、可伸縮性好與相關軟件集成程度高等優點。 microsoft sql server 2000有如下主要特點: (1)具有豐富的圖形管理工具。 (2)動態自動管理和優化。系統在運行過程中可根據運行時的狀態自動配置參數。 (3)支持xml、http。通過xml可訪問microsoft sql server服務器。 (4)豐富的編程接口。transact-sql、db-library for c、嵌入式sql。 (5)具有良好的伸縮性和可靠性。可運行在多種操作系統下
38、;可運行在?cpu或對稱多cpu環境下。 (6)簡單的管理方式。sql server具有較好的管理工具外,還可與操作系統有機集成,利用操作系統提供的服務和功能管理sql server系統。3.2 數據庫需求分析 系統中的實體有:學生、教師、課程、教務員。 關系有:學生修課,教師授課。 校園風景實體e-r圖如圖3-1示校園風景圖3-1校園圖片實體e-r圖教務員實體e-r圖如圖3-2示教務員 圖3-2 教務員實體e-r圖學生實體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)學院
39、實體e-r圖如圖3-6示學院圖3-6課程實體e-r圖教師、學生、課程之間關系的e-r圖。 教師和課程之間是1對n的講授關系,也就是說一名老師可以講授多門課程;學生修課既和老師有關又和課程有關,即學生和講授關系有關,將講授和其對應的實體-教師和課程作為一個聚集。學生與此聚集之間有1對m的修課關系,即一名學生可以修多門課程。e-r圖如圖3-7示。 教師教師 學生 圖3-7 教師、學生、課程之間關系e-r圖 3.3 數據庫邏輯設計 數據庫的邏輯設計就是把e-r圖轉化為所選用地數據模型。本系統數據庫系統為sql server 2000,因此將e-r模型轉化為關系數據模型即可。 學生(學號,學生名,性別
40、,出生年月,電話,學院,專業,班級); 教師教師編號,教師名,性別,電話,院系,密碼; 課程(課程編號,課程名,學分,上課時間,上課地點); 學院(學院名稱,系別名稱); 教授(課程代碼,教師編號,課程編號,教學班號,開課時間); 修課考勤(課程代碼,學號,課程編號,教師編號,教學班號,早退,遲到,曠課,請假)。3.4 數據庫結構創建 數據庫采用microsoft sql server 2000,利用sql語言,通過查詢分析器可以創建數據庫和建立數據表,通過企業管理器也可以方便的管理數據庫。 3.4.1 建立數據表 通過sql語句在查詢分析器下邊可以方便的建立數據庫以及數據表。在查詢分析器中分
41、別建立教務員信息表(admin)、學生信息表(stu_inf)、教師信息表(tea_inf)、課程信息表(cou_inf)、學生修課考勤表(att_inf)。 下邊僅以創建修課考勤表為例: create table att_inf - 修課考勤表 idintidentity 1,1 primary key , -自動編號 cou_cod intnot null, -課程代碼 cou_numchar8 not null, -課程編號 cou_namvarchar20not null, -課程名稱 tea_num char8 not null,-教師編號 tea_nam varchar8not n
42、ull,-教師姓名 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,-早退次數 late tinyint not null,-遲到次數 absenttinyint not null,-缺席次數 atttinyint not null,-到勤次數 leave tinyint not null,-請假次數 constraint fk_ate
43、a_con -創建fk_atea_con外鍵約束 foreign key tea_num -tea_num參考表tea_inf(教師信息表 references tea_inftea_num -中的tea_num項 on update cascade -更新時級聯更新 on delete no action , -刪除時沒有動作 constraint fk_astu_con -創建fk_astu_con外鍵約束 foreign key stu_num-stu_num參考stu_inf(學生信息表 references stu_infstu_num-中的stu_num項 on update ca
44、scade -更新時級聯更新 on delete no action, -刪除時沒有動作 constraint fk_acou_con-創建fk_acou_con外鍵約束 foreign key cou_cod-cou_num參考表tea_inf(學生信息表 references cou_infcou_cod -中的cou_num項 on update no action-更新時沒有動作 on delete no action , -刪除時沒有動作 教務員信息表存貯教務員的用戶名、姓名還有密碼,因為密碼要經過md5加密,所以密碼長度為50。表結構如表3-1示。 表3-1教務員信息表 admin
45、 教師信息表存貯教師的基本信息,主要包括教師編號、教師姓名、性別、所在學院、電話、登錄密碼。表結構如表3-2所示。 表3-2 教師信息表 tea_inf 學生信息表記錄了學生的基本信息,包括學號、學生姓名、性別、出生年月、電話、學院、專業、年級,還有密碼。表的詳細結構如表3-3所示。 表3-3學生信息表 stu_inf 學院專業信息表主要記錄學院和對應的專業,包括學院名和專業名。因為記錄數量比較少,所以不設主鍵。表結構如圖3-4所示。 表3-4 學院專業信息表 major 程信息表記錄了課程的基本信息,包括課程代碼、課程編號、授課教師編號、姓名、教學班號、學分、開課院系、開課周,上課時間。表結
46、構如表3-5所示。 表3-5 課程信息表 cou_inf 校園風景信息表主要是記錄校園風景圖片的信息,主要包括圖片編號,圖片名稱和圖片上傳的時間。表的結構如表3-6所示。 表3-6 校園風景信息表 pic_inf 學生修課信息表是整個系統的關鍵表,記錄了學生的考勤記錄。主要字段有學號、學生姓名、課程編號、課程名稱、教師編號、教師姓名、教學班號、學分、早退次數、遲到次數、曠課次數、請假次數、出勤次數。表結構如圖3-7所示。表3-7學生修課考勤表 att_inf3.4.2 數據表間關系 數據表建立好之后,我們可以在企業管理器中查看表之間的關系。本系統數據庫建立好之后,可以看見數據庫間的關系如圖3-
47、8所示。由圖可知:pic_inf校園風景表、admin教務員信息表是2個獨立的表,他們各自和其他的表沒有直接的關系,而tea_inf(教師信息表)、cou_inf課程信息表、stu_inf(學生信息表)、att_inf(修課考勤信息表)之間有關系存在。 圖3-8數據表間關系圖 系統詳細設計 本章詳細介紹了系統的編碼實現過程。按照功能模塊分別介紹了未登錄用戶、學生用戶、教師用戶、教務員用戶等四個功能模塊設計,著重介紹了系統編碼實現中的難點和重點。4.1 用戶登錄 登陸界面主要是2個文本框分別輸入用戶名和密碼,一個下拉框選擇登陸類型。界面如圖4-1所示,程序如下示。form methodpost actionlogin_check.asp namelogin onsubmitreturn checkthis 用戶名:input typetext nameusername size13 tabindex1length8classsamllinput密碼:input typepassword namepassword size13 tabindex2 length15 classsamllinput類型:select
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智慧城市建設政策探析試題及答案
- 安全工程試題及答案
- 網絡工程師考試內容大全及2025年試題與答案
- 公共政策與國際關系試題及答案
- 西方政治中的性別角色與變遷試題及答案
- 信息系統項目管理的實務案例分享試題及答案
- 網絡工程師實戰試題及答案分享
- 軟件設計師考試備考心得及試題答案
- 檢修考題復習試題
- 公共衛生政策與應急管理的結合試題及答案
- 2024年花藝師現場制作考題及試題及答案
- 微型消防站設立方案
- 合同緊急聯系人協議
- 中西繪畫藝術風格對比分析
- 商業保險在風險管理中的應用
- 家庭法律顧問合同范本
- 備考2025年高考數學-名師導學-一輪總復習-參考答案
- 基于IPv6的校園網升級改造
- 新時代中小學教師職業行為十項準則課件
- 2024年四川省廣元市中考英語試卷真題(含答案解析)
- DB3305╱T 114.4-2019 污水零直排區建設與管理規范 第4部分:其他區域
評論
0/150
提交評論