版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、本科畢業(yè)論文(科研訓練、畢業(yè)設計)題目:基于B/S模式的工程碩士教學與學籍管理系統(tǒng)的實現詳細設計姓 名: 學 院:軟件學院系:軟件工程系專 業(yè):軟件工程 年 級: 學 號: 指導教師: 職 稱: 年 月摘 要 工程碩士教學與學籍管理系統(tǒng)是軟件學院教學系統(tǒng)建設的重要組成部分,是提高教學管理質量,提高信息化服務水平的關鍵環(huán)節(jié),在學院的建設過程中具有重要的地位。隨著工程碩士教學管理水平的不斷提高,針對工程碩士建立完善的、性能良好的教學與學籍管理系統(tǒng)已成為學院加強教學管理工作,提高信息化管理與服務水平的一項重要基礎設施建設工作。本文系統(tǒng)地闡述了這樣一套教學與學籍管理系統(tǒng)的實現。文章提出了B/S新型體系
2、結構,對相關的網絡和數據庫技術進行了探索,并且介紹了教學與學籍管理系統(tǒng)的總體設想、系統(tǒng)的詳細設計。文章還重點闡述了本文作者所負責的課程表模塊、導師關系模塊、學生信息模塊、教師信息模塊的功能與實現。工程碩士教學與學籍管理系統(tǒng)在功能上實現了開放式信息的管理、共享和查詢,同時又具有較高的交互性和安全性。本系統(tǒng)的開發(fā)充分適應了教學與學籍管理的需求,對于促進廈門大學軟件學院教學的科學化、程序化管理具有重要意義。關鍵詞:教學與學籍管理系統(tǒng); JSP; B/S模式AbstractTeaching and school management system for MSE( Master of Software
3、 Engineering ) is an important part of the construction of software college teaching system. It plays a key role in the improvement of quality of teaching management and the level of information services. With the constantly improve of the level of teaching and management for MSE( Master of Software
4、 Engineering ), it is necessary to establish sound,good performance teaching and school management system for MSE( Master of Software Engineering ). It becomes an important infrastructure construction for software college to strengthen teaching management and improve information management. This dis
5、quisition systematically explains the implementation of such a teaching and school management system. It raises B/S new framework, explores related network and database technologies. Besides, it introduces overall vision and detailed design of the system. In the text, the author focuses on the funct
6、ion and implementation of four modules which are designed by himself. The four modules are curriculum module, mentor relationship module, information of students module and information of teachers module.Teaching and school management system for MSE realizes open management of information,share and
7、enquiriesAt the same time, it has high interactive and security. The development of this system fully adapts the need of teaching and school management for MSE( Master of Software Engineering ).It very important for software college to improve scientific teaching and procedural management.Key words:
8、 teaching and school management system; JSP; B/S model目 錄第一章 引 言11.1 項目背景11.2 項目目標11.3 論文的主要內容與組織安排2第二章 系統(tǒng)需求分析42.1 系統(tǒng)需求42.2 需求模型5第三章 系統(tǒng)的概要設計123.1 支持條件123.2 系統(tǒng)架構153.3 系統(tǒng)開發(fā)流程163.4 數據庫設計16第四章 系統(tǒng)的詳細設計244.1 課程表模塊的實現244.2 導師關系模塊的實現264.3 學生信息模塊284.4 教師信息模塊36第五章 系統(tǒng)實現難點解析375.1 在JSP中連接MYSQL數據庫375.2 用戶登錄時數據驗證與
9、用戶信息初始化的算法375.3 數據庫中多表更新時的事務處理395.4 數據庫中表更新時的鎖定問題405.5 數據庫的自動備份與恢復41第六章 系統(tǒng)測試44第七章 結束語46參考文獻47致 謝48Contents Chapter 1 Introduction11.1 The Background of the Project11.2 The Goal of the Project11.3 The Main Content and Organization of the Disquisition 2Chapter 2 The Analylization of the System Needs42
10、.1 The Needs of the System42.2 The Model of System Needs5Chapter 3 Schematic Design of the System123.1 Supports123.2 The Framework of the System153.3 Process of System Devolopment163.4 The Design of Database16Chapter 4 Detailed Design of the System244.1 Curriculum Module244.2 Mentor Relationship Mod
11、ule264.3 Information of Student Module284.4 Information of Teacher Module36Chapter 5 Explaination of System Designs Difficulties375.1 Connecting with MYSQL in JSP375.2 Data Validation When Users Logon and Algorithm of Users Information Initialization375.3 Transaction Processing when Mutiple Tables U
12、pdating in Database395.4 Lock Issues when the Table Updating in Database405.5 Automatic Backup &Recovery in Database41Chapter 6 The System Testing44Chapter 7 Conclution46References 47Acknowledgement48第一章 引 言 項目背景 近年來,軟件學院工程碩士教育蓬勃發(fā)展。隨著招生規(guī)模的擴大和管理信息量的迅猛增漲,教學日常管理工作日趨繁重、復雜。但是學院并沒有一套專門的工程碩士教學與學籍管理系統(tǒng)。傳
13、統(tǒng)的做法是使用工學碩士教學管理系統(tǒng)來管理工程碩士。雖然工程碩士和工學碩士的教學管理存在諸多類似,但兩者之間畢竟是有差別的。使用工學碩士教學管理系統(tǒng)來管理工程碩士,導致工程碩士的教學管理工作指對性不強,不夠簡潔、到位、高效。在工程碩士教育的早期,這些缺陷是可以被容許的。但隨著學院工程碩士教育的飛速發(fā)展,這個缺陷的阻礙作用將越來越凸顯。因此,我們迫切需要研制開發(fā)出一套綜合教務管理系統(tǒng),把碩士教學工作信息化、模塊化、便捷化,以適應工程碩士教學管理模式提出的簡潔、實用、高效、經濟的要求。 項目目標本系統(tǒng)設計的總體目標是充分利用Internet技術的B/S體系結構,建立一套簡潔、實用、高效、經濟的工程碩
14、士教學管理體系,使信息和資源的操作與管理過渡到一個真正開放的,與平臺無關的環(huán)境。即:1、本系統(tǒng)是一個集教學工作自動化和信息化為一體,集Browser/Server和Web技術于一體的先進的電腦網絡系統(tǒng)。在為我院教學秘書提供優(yōu)質、高效的教學管理和事務處理的同時,采用安全可靠的現代化處理和控制技術,及時、準確、可靠地采集和傳輸信息,建立完備、可靠的工程碩士教學管理信息系統(tǒng)。2、本系統(tǒng)借助防火墻與校園網隔離,以抵御來自外部網絡的惡意攻擊。建成的系統(tǒng)應能避免軟、硬件故障造成的數據損失,保證數據在傳輸過程中安全、保密。系統(tǒng)要有足夠大的吞吐量,不會因過多的服務請求而出現系統(tǒng)崩潰。界面友好,易于學習,非計算
15、機專業(yè)人員通過學習用戶使用手冊即可掌握基本操作。3、借助于教學管理信息系統(tǒng)的建設,促進教學管理效率的提高。通過提供多層次的教務信息服務和實用的使用手段,滿足院內教師對教務信息共享和利用的要求,并為學院領導的決策提供有效的幫助。4、師生共同參與教學管理信息系統(tǒng)。雖然本系統(tǒng)的主要操作用戶是教學秘書,但同樣也須要由教師和工程碩士共同參與完成。這樣就可以使學院工程碩士的教學管理信息更加透明、高效化,免去了以往借助發(fā)布過多通知的手段來輔助教學的不必要的麻煩。5、教學管理信息系統(tǒng)是為我院量身定制的,系統(tǒng)的需求部分是由我院教學秘書直接參與,為整個系統(tǒng)的架構打下了良好的基礎,也為實現此系統(tǒng)提供了充分的保障。而
16、建成的系統(tǒng)將會是一個高效的,實用的,符合我院教學模式的系統(tǒng)。 論文的主要內容與組織安排 本文系統(tǒng)地闡述了這樣一套教學與學籍管理系統(tǒng)的實現。在第二章中,文章提出系統(tǒng)的需求。將系統(tǒng)的目標用戶分為教學秘書,教師,工程碩士三者,并使用用例圖對系統(tǒng)需求進行分析。第三章給出了系統(tǒng)的概要設計??傮w設計主要介紹系統(tǒng)的開發(fā)平臺等,其中重點介紹了系統(tǒng)架構及系統(tǒng)的數據庫設計。系統(tǒng)的設計思想為面向對象設計方法,采用3層架構的B/S模式,包括表示層、中間層和數據服務層。這樣的一個系統(tǒng)架構,充分體現了瘦客戶端的設計理念。在數據庫設計方面,文章詳細介紹了系統(tǒng)數據庫的12張表,并指出各表之間的聯系,最后還給出系統(tǒng)的三種目標用
17、戶對數據庫的權限。文章的第四章是詳細設計的內容。在詳細設計部分,文章給出了系統(tǒng)的11個功能模塊,且特別指出作者負責的四個模塊:課程表模塊、導師關系模塊、學生信息模塊、教師信息模塊并對每一個模塊作出詳細介紹。在課程表模塊,文章給出了查詢課表的操作流程,并附上系統(tǒng)界面和流程圖加以說明。需要特別指出的是,課程表模塊提供下載課程表的功能,下載下來的課表以word格式保存。這里的技術難點是導出網頁table中的數據到word文檔,該段代碼將在文章中給出詳細的解析。在導師關系模塊、學生信息模塊、教師信息模塊,也都給出了該模塊的流程。學生信息模塊和教師信息模塊非常類似,他們有相同的技術難點,即添加學生或教師
18、時使用javascript進行表單信息合法性的驗證,查詢學生或教師信息時使用javabean從數據庫中讀入信息。這些代碼文章中也會給出并詳細解析。第五章是系統(tǒng)實現難點解析,包括在JSP中連接MYSQL數據庫、用戶登錄時數據驗證與用戶信息初始化的算法、數據庫中多表更新時的事務處理、數據庫中表更新時的鎖定問題、數據庫的自動備份與恢復。第六章是關于系統(tǒng)測試方案的介紹。本系統(tǒng)主要采用黑盒測試。系統(tǒng)測試的結果是:總的來說,整個系統(tǒng)滿足了用戶的需求,系統(tǒng)的開發(fā)是成功的。在第七章,文章對整個系統(tǒng)的開發(fā)過程進行了總結:在整個系統(tǒng)的開發(fā)中,項目組嚴格采用了軟件工程的方法。此外,文章還指出了系統(tǒng)中需要進一步完善的
19、地方。第二章 系統(tǒng)需求分析系統(tǒng)需求分析是軟件項目成功與否的關健, 需求的捕獲是需求管理的基礎和前提, 良好的需求管理是軟件項目成功的重要保證。本教學管理系統(tǒng)的需求部分是由我院教學秘書直接參與,為整個系統(tǒng)的架構打下了良好的基礎,也為實現此系統(tǒng)提供了充分的保障。 系統(tǒng)需求 本系統(tǒng)的目標用戶角色主要為教學秘書、導師和學生。從用戶角度看,整個管理系統(tǒng)將被分割為三個子系統(tǒng):秘書系統(tǒng),教師系統(tǒng)和學生系統(tǒng)。如圖2-1所示:圖2-1 系統(tǒng)功能模塊圖 各個系統(tǒng)功能詳細描述如下:1、秘書系統(tǒng)(1)開課計劃管理:把每個學期開設的課程添加進入系統(tǒng),使得老師可以查看(2)排課計劃管理:把各門課詳細信息添加進去,生成課程
20、表。(3)學生信息管理:學生基本信息的錄入,修改和學生信息的刪除。(4)教師信息管理:教師的基本信息的錄入,修改和刪除(5)選課計劃管理:將排課計劃中的專業(yè)選修課提取出來供學生選擇(6)成績信息管理:可以錄入,修改,查看和刪除每個學生的各科成績(7)導師信息管理:根據各個導師錄入,修改,查看和刪除對應的學生(8)留言板:可以看到學生的留言并回復學生??晒芾砹粞孕畔?。2、教師系統(tǒng)(1)開課計劃查看:查看每個學期開設的課程。(2.排課計劃查看:即查看教學秘書制定的課程表。(3)修課信息查看:查看每門課修課的學生名單,并打印名單。(4)成績信息管理:查看每個學生的各科成績,對自己主講的課程,可以輸入
21、和修改學生成績。(5)導師信息查看:可查看老師指導的學生的名單。(6)個人信息查看:查看自己的基本信息。(7)留言板:可以看到學生的留言并回復學生。3.學生系統(tǒng)(1)開課計劃查看:查看每個學期開設的課程。(2)排課計劃查看:即查看教學秘書制定的課程表。(3)選課:根據排課計劃選修自己的課,并可退選。(4)成績查詢:查看自己所修課程的成績。(5)個人信息查詢:查看自己的基本信息。(6)留言板:可以在留言板上發(fā)表留言,可查看回復。從上文的描述中可以看出不同的用戶對系統(tǒng)具有不同的訪問權限,其中教學秘書的權限最大,學生最小。 需求模型在這里以用例模型來分析教學與學籍管理系統(tǒng)的需求。系統(tǒng)用例圖提供了軟件
22、系統(tǒng)的高層次的用戶視圖,表示以外部參與者的角度來看系統(tǒng)的使用。用例模型是系統(tǒng)既定功能及系統(tǒng)環(huán)境的模型, 并作為客戶和開發(fā)人員之間的契約。用例模型用作分析、設計和測試活動的基本輸入,參與者和用例是用例模型中的主要元素。 由前面的需求分析得出,整個系統(tǒng)主要有三個參與者,即教學秘書、導師和學生。這樣就可以畫出整個系統(tǒng)的用例圖 。見圖2-2。圖2-2 教學秘書用例圖用例關系為:U1:登錄:教學秘書登錄系統(tǒng)(由U2,U3,U4,U5,U7,U29和U30擴展)。U2:查看信息:教學秘書登錄系統(tǒng)后進行的所有查詢信息操作(擴展U1,抽象,被U8,U9,U11,U12,U14,U15,U16,U17,U18,
23、U19,U20,U21一般化)。U3:修改信息:教學秘書登錄系統(tǒng)后進行的信息修改操作(擴展U1,抽象,被U6,U31,U32,U33,U34,U35,U36,U37,U38一般化)。U4:添加信息:教學秘書登錄系統(tǒng)后進行的錄入信息操作(擴展U1,抽象,被U22,U23,U24,U25,U26,U27,U28一般化)。U5:刪除信息:教學秘書登錄系統(tǒng)后對信息的刪除操作(擴展U1,抽象,被U39,U40,U41,U42,U43,U44,U45,U48一般化)。U6:修改密碼:教學秘書修改自己的登錄密碼(特殊化U3)。U7:注銷退出:教學秘書注銷登錄(擴展U1)。U8:查看開課:教學秘書查詢具體學年
24、學期的開設課程,若此課程已排課,可以查看排課詳細(特殊化U2,包含了U10,U13)。U9:搜索開課:教學秘書通過課程名稱或者開課學年搜索開課計劃,若此課程已排課,可以查看排課詳細(特殊化U2,包含了U10,U13)。U10:查看開課詳細:教學秘書在查看總開課時可以進入查看任一開課的詳細信息 (被U8,U9包含)。U11:查看排課:教學秘書查詢具體學年學期所排的課程(特殊化U2,包含了U13)。U12:搜索排課:教學秘書通過課程名稱或者開課學年搜索排課計劃(特殊化U2,包含了U13)。U13:查看排課詳細:教學秘書在查看總排課時可以進入查看任一排課的詳細信息(被U8,U9,U11,U12包含)
25、。U14:查看選課狀態(tài):教學秘書查看已排課,課程類型為專業(yè)選修課的狀態(tài)可選或者非可選(特殊化U2)。U15:查看修課名單:教學秘書查看已經錄入系統(tǒng)的修各門課程的學生名單(特殊化U2,被U38擴展)。U16:查看教師信息:教學秘書查看學院教師的基本信息(特殊化U2)。U17:查看學生信息:教學秘書查看學院學生的基本信息(特殊化U2)。U18:查看學生成績:教學秘書查看學院學生已修課程的成績(特殊化U2,被U47擴展)。U19:查看導師關系:教學秘書查看已經確定導師的碩士,并可進入查看學生的具體信息(特殊化U2,包含U17)。U20:查看留言:教學秘書查看用戶(包括自己,教師,學生)的留言(特殊化
26、U2)。U21:查看課程表:教學秘書通過開課學年學期和年級查看相應的課程表(特殊化U2,被U34擴展)。U22:添加開課:教學秘書按學年學期錄入開課計劃(特殊化U4)。U23:添加排課:教學秘書按學年學期錄入排課計劃(特殊化U4)。U24:添加修課學生:教學秘書為沒有選課的學生添加選課(特殊化U4)。U25:添加教師信息:教學秘書為系統(tǒng)錄入教師信息(特殊化U4)。U26:添加學生信息:教學秘書為系統(tǒng)錄入學生信息(特殊化U4)。U27:添加學生成績:教學秘書為已修課的學生添加成績(特殊化U4)。U28:添加導師關系:教學秘書為尚未確定導師的學生添加導師關系(特殊化U4)。U29:留言:教學秘書在
27、系統(tǒng)留言(擴展U1)。U30:回復留言:教學秘書回復學生和老師的留言(擴展U1)。U31:修改開課信息:教學秘書修改已有的開課,包括名稱,開課時間等(特殊化U3)。U32:修改排課:教學秘書為已排課的課程修改排課信息,包括時間,地點和任課教師(特殊化U3)。U33:修改課程狀態(tài):教學秘書為專業(yè)選修課修改狀態(tài)可選或者不可選(特殊化U3)。U34:打印課表:教學秘書查看課表的同時可以將課表下載打印(擴展U21)。U35:修改教師信息:教學秘書修改學院教師的信息(特殊化U3)。U36:修改學生信息:教學秘書修改學院學生的信息(特殊化U3)。U37:修改學生成績:教學秘書修改已錄入成績的學生的成績(特
28、殊化U3)。U38:打印名單:教學秘書查看修課學生的同時可以下載打印修課名單(擴展U15)。U39:刪除學生信息:教學秘書刪除學院學生(特殊化U5)。U40:刪除教師信息:教學秘書刪除學院教師(特殊化U5)。U41:刪除開課:教學秘書刪除開設課程(特殊化U5)。U42:刪除排課:教學秘書刪除已排課程(特殊化U5)。U43:刪除修課學生:教學秘書刪除選修課修課學生(特殊化U5)。U44:刪除學生成績:教學秘書刪除已錄入成績學生的成績(特殊化U5)。U45:刪除留言:教學秘書刪除留言板中的留言(特殊化U5)。U46:刪除導師關系:教學秘書刪除學生和導師的對應關系(特殊化U5)。U47:打印成績:教
29、學秘書在查看學生成績的同時可以下載打印成績單(擴展U18)。圖2-3 教師用例圖用例關系為:U1:登錄:教師登錄系統(tǒng)(由U2,U3,U4,U5,U6和U8擴展)。U2:查看信息:教師登錄系統(tǒng)后進行的所有查詢信息操作(擴展U1,抽象,被U9,U10,U11,U12,U14,U15,U16,U17,U18和U19一般化)。U3:修改信息:教師登錄系統(tǒng)后進行信息的修改(擴展U1,抽象,被U7,U20一般化)。U4:錄入成績:教師錄入自己授課的課程的學生成績(擴展U1)。U5:留言:教師登錄系統(tǒng)后進行留言操作(擴展U1)。U6:回復留言:教師對留言進行對應的回復(擴展U1)。U7:修改密碼:教師修改自
30、己的登錄密碼(特殊化U3)。U8:注銷退出:教師注銷登錄(擴展U1)。U9:查看開課:教師查詢具體學年學期的開設課程,若此課程已排課,可以查看排課詳細(特殊化U2,包含了U13)。U10:搜索開課:教師通過課程名稱或者開課學年搜索開課計劃,若此課程已排課,可以查看排課詳細(特殊化U2,包含了U13)。U11:查看排課:教師查詢具體學年學期所排的課程(特殊化U2,包含了U13)。U12:搜索排課:教師通過課程名稱或者開課學年搜索排課計劃(特殊化U2,包含了U13)。U13:查看排課詳細:教師在查看排課時可以進入查看任一排課的詳細信息(被U9,U10,U11,U12包含)。U14:查看課程表:教師
31、通過開課學年學期和年級查看相應的課表(特殊化U2,被U21擴展)。U15:查看修課名單:教師查看已經錄入系統(tǒng)的修各門課程的學生名單(特殊化U2,被U22擴展)。U16:查看學生成績:教師查看學院學生已修課程的成績(特殊化U2)。U17:查看導師關系:教師查看已經確定導師的碩士,并可進入查看學生的具體信息(特殊化U2,包含U23)。U18:查看個人信息:教師查看自己的基本信息(特殊化U2)。U19:查看留言:教師查看留言板中的留言(特殊化U2)。U20:修改成績:教師可以修改自己授課的課程的學生成績(特殊化U3)。U21:打印課表:教師查看課表的同時可以將課表下載打印(擴展U14)。U22:打印
32、名單:教師查看修課學生的同時可以下載打印修課名單(擴展U15)。U23:查看學生信息:教師查看碩士生的基本信息(被U17包含)。圖2-4 學生用例圖用例關系為:U1:登錄:學生登錄系統(tǒng)(由U2,U3,U4,U13和U14擴展)。U2:查看信息:學生登錄系統(tǒng)后進行的所有查詢信息操作(擴展U1,抽象,被U5,U6,U7,U8,U10,U11和U12一般化)。U3:修改密碼:學生修改自己的登錄密碼(擴展U1)。U4:注銷退出:學生注銷登錄(擴展U1)。U5:查看開課:學生查詢具體學年學期的開設課程,若此課程已排課,可以查看排課詳細(特殊化U2,包含了U9)。U6:搜索開課:學生通過課程名稱或者開課學
33、年搜索開課計劃,若此課程已排課,可以查看排課詳細(特殊化U2,包含了U9)。U7:查看排課:學生查詢具體學年學期所排的課程(特殊化U2,包含了U9)。U8:搜索排課:學生通過課程名稱或者開課學年搜索排課計劃(特殊化U2,包含了U9)。U9:查看排課詳細:學生在查看總排課時可以進入查看任一排課的詳細信息(被U5,U6,U7,U8包含)。U10:查看課程表:學生通過開課學年學期和年級查看相應的課表(特殊化U2,被U15擴展)。U11:查看成績:學生查看自己已修課程的成績(特殊化U2)。U12:查看留言:學生查看留言板中的留言(特殊化U2)。U13:選課:學生選擇或者退選可選的專業(yè)選修課(擴展U1)
34、。U14:留言:學生登錄系統(tǒng)后進行留言操作(擴展U1)。U15:打印課表:學生查看課表的同時可以將課表下載打印(擴展U10)。第三章 系統(tǒng)的概要設計從應用的角度來看, 對一個大型、復雜的軟件系統(tǒng)需要一個架構設計, 以便開發(fā)人員可以向著共同的目標努力。一個好的系統(tǒng)架構, 有利于理解系統(tǒng)、組織開發(fā)、鼓勵重用和進化系統(tǒng)。從技術的角度來看, 一個好的系統(tǒng)架構可以控制或減少系統(tǒng)的開發(fā)風險。3.1 支持條件 系統(tǒng)語言根據系統(tǒng)的功能和特點,本項目組成員經過討論,決定采用JSP作為系統(tǒng)的開發(fā)語言。JSP(Java Server Pages)是由Sun Microsystems公司倡導、許多公司參與一起建立的一
35、種動態(tài)網頁技術標準。作為新一代站點開發(fā)語言,JSP為創(chuàng)建顯示動態(tài)內容的Web頁面提供了一個簡捷而快速的方法。同目前常用的兩種動態(tài)網頁語言ASP ( Active Server Pages) , PHP (Hypertext Preprocessor)相比,JSP完全解決了他們一個通病腳本級執(zhí)行。具體來說,JSP有如下優(yōu)點:1、將內容的生成和顯示進行分離 使用JSP 技術, Web 頁面開發(fā)人員可以使用HTML 或者XML 標識來設計和格式化最終頁 面。使用JSP 標識或者小腳本來生成頁面上的動態(tài)內容, 所有的腳本在服務器端運行。如果 核心邏輯被封裝在標識和Beans 中, 那么其他人能夠編輯和
36、使用JSP 頁面, 而不影響內容的 生成。在服務器端, JSP 引擎解釋JSP 標識和小腳本生成所請求的內容, 并且將結果以HTML頁面的形式發(fā)送回瀏覽器。這有助于作者保護自己的代碼, 而又保證任何基于HTML 的Web 瀏覽器的完全可用性。 2、強調可重用的組件絕大多數JSP 頁面依賴于可重用的, 跨平臺的組件來執(zhí)行應用程序所要求的更為復雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件, 基于組件的方法加速了總體開發(fā)過程, 并且使得各種組織在他們現有的技能和優(yōu)化結果的開發(fā)努力中得到平衡。 3、采用標識簡化頁面開發(fā)JSP 技術封裝了許多功能。標準的JSP 標識能夠訪問和實例化JavaBean
37、s 組件, 設置或者檢索組件屬性, 下載Applet, 以及執(zhí)行用其他方法更難于編碼和耗時的功能。通過開發(fā)定制化標識庫, JSP 技術是可以擴展的。第三方開發(fā)人員可以為常用功能創(chuàng)建自己的標識庫。這使得Web 頁面開發(fā)人員能夠使用熟悉的工具和如同標識一樣的執(zhí)行特定功能的構件來工作。JSP 技術很容易整合到多種應用體系結構中, 以利用現存的工具和技巧, 并且擴展到能夠支持企業(yè)級的分布式應用。作為采用Java技術家族的一部分, JSP 技術能夠支持高度復雜的基于Web 的應用。由于JSP 頁面的內置腳本語言是基于Java編程語言的, 而且所有的JSP 頁面都被編譯成為Java Servlet, JS
38、P 頁面就具有Java 技術的所有好處, 包括健壯的存儲管理和安全性。作為Java 平臺的一部分, JSP 擁有Java 編程語言“一次編寫, 各處運行”的特點。 系統(tǒng)數據庫在數據庫方面,選用mySQL作為系統(tǒng)數據庫。mySQL是一種開放源代碼的關系型數據庫管理系統(tǒng)(RDBMS),MySQL因為其速度、可靠性和適應性而備受關注。大多數人都認為在不需要事務化處理的情況下,MySQL是管理內容最好的選擇。同目前流行的另一種后臺數據庫 SQL Server相比,MySQL 具有如下特點: 1、可擴展,開放的存儲引擎: SQL Server服務器的存儲引擎是狹隘
39、的,保守的,而MySQL 服務器的存儲引擎是可擴展,開放的。雖然你可以使用SQL Server服務器的Sybase引擎,但MySQL能夠提供更多種的選擇,如MyISAM, Heap, InnoDB, and Berkeley DB。 2、發(fā)行費用:mySQL很便宜 當提及發(fā)行的費用,這兩個產品采用兩種絕然不同的決策。 mySQL是開源軟件,存在諸多免費的版本。對于SQL Server服務器,獲取一個免費的開發(fā)費用最常的方式是購買微軟的Office或者Visual Studio的費用。但是,如果你想用于商業(yè)產品的開
40、發(fā),你必須還要購買SQL Server Standard Edition。學校或非贏利的企業(yè)可以不考慮這一附加的費用。 3、性能:先進的MySQL 純粹就性能而言,MySQL是相當出色的。首先它包含一個缺省桌面格式MyISAM。MyISAM 數據庫與磁盤非常地兼容而不占用過多的CPU和內存。其次,MySQL可以運行于Windows系統(tǒng)而不會發(fā)生沖突,在UNIX或類似UNIX系統(tǒng)上運行則更好。此外,你還可以通過使用64位處理器來獲取額外的一些性能。因為MySQL在內部里很多時候都使用64位的整數處理。Yahoo!商業(yè)網站就使用MyS
41、QL 作為后臺數據庫。 雖然SQL Server服務器的穩(wěn)定性要比mySQL強很多。但是,這些特性也要付出代價的。比如,必須增加額外復雜操作,磁盤存儲,內存損耗等等。 4、安全性 :良好的安全機制 這兩個產品都有自己完整的安全機制。只要你遵循這些安全機制,一般程序都不會出現什么問題。 5、恢復性:不如SQL Server 恢復性也是MySQL的一個特點,這主要表現在MyISAM配置中。這種方式有它固有的缺欠,如果你不慎損壞數據庫,結果可能會導致所有的數據丟失。然而,對于SQL Server服務器而言就表現得很穩(wěn)鍵。SQL服務器能夠時刻監(jiān)測數據交換點并能夠把數據庫
42、損壞的過程保存下來。 考慮到工程碩士教學與學籍管理系統(tǒng)開發(fā)時間短,任務重,且mySQL 優(yōu)異的表現完全能夠滿足系統(tǒng)性能的要求,我們決定采用mySQL作為我們的系統(tǒng)數據庫。 系統(tǒng)開發(fā)平臺 開發(fā)平臺方面,選用Eclipse+MyEclipse+Tomcat+MySQL作為開發(fā)環(huán)境。 各個軟件的版本為: 1、jdk(可去 :/java.sun 官網下載,下載后的JDK文件為 jdk-1_5_0_06-windows-i586-p.exe) 2、Tomcat(可去 ://tomcat官網下載,下載后的JDK文件為apache-tomcat-5.5.23.
43、exe) 3、Eclipse SDK(可以去 :/ 官網下載) 4、MyEclipse Enterprise Workbench GA(可以去 :/ myeclipseide 官網下載) 系統(tǒng)運行環(huán)境運行環(huán)境方面,服務器端只需要安裝. 系統(tǒng)架構 工程碩士教學與學籍管理系統(tǒng)是基于B/S模式的服務器端執(zhí)行的應用系統(tǒng),在客戶端只需運行統(tǒng)一的瀏覽器軟件。系統(tǒng)結構框架圖如圖3-1所示:圖3-1 基于B/S模式的教學管理信息系統(tǒng)結構框架圖1、表示層 表示層在本系統(tǒng)中是瀏覽器。系統(tǒng)運行時,客戶從Web服務器下載它所需要執(zhí)行的程序或腳本,而在此層不需要安裝系統(tǒng)的應用軟件,這樣做體現了瘦客
44、戶端的系統(tǒng)概念。瘦客戶端指的是在B/S網絡體系中的一個基本無需應用程序的計算機終端,它通過一些協(xié)議和服務器通信,進而接入局域網。2、中間層 中間層是Web 服務器,它由三部分組成: (1)業(yè)務處理邏輯,即應用服務器。 這是中間層的主要部分,所有的業(yè)務邏輯和規(guī)則都在這里得到體現。業(yè)務處理邏輯負責業(yè)務規(guī)則的解釋和執(zhí)行,并根據客戶端用戶指令,響應客戶端的請求,同時向數據庫連接發(fā)送或請求數據。 (2)用戶身份驗證 負責對客戶端用戶的身份進行驗證,防止非法用戶的侵入。用戶身份驗證根據用戶的輸入信息,授權或禁止用戶訪問某些特定的資源。 (3)數據庫連接 Web服務器是通過數據庫連接和數據庫管理系統(tǒng)交互信息
45、的,對于不同的數據庫系統(tǒng),其訪問方式是不同的,但是通過標準連接接口來訪問數據庫,可以使需要得到數據庫服務的程序存取異地數據庫。3、數據服務層數據服務層是數據庫管理系統(tǒng)(DBMS),它負責數據的存儲管理,安全性管理和完整性管理。 系統(tǒng)開發(fā)流程 整個系統(tǒng)的開發(fā)過程中,我們嚴格遵守軟件工程開發(fā)方法的要求。整個系統(tǒng)的開發(fā)經歷以下8個階段:1、系統(tǒng)需求分析和需求分析文檔編寫2、系統(tǒng)總體架構和功能體系設計3、數據庫設計和實現4、所需資料收集和網頁風格css設計5、代碼實現6、重要算法和難點說明7、系統(tǒng)測試和測試文檔編寫8、用戶手冊編寫 數據庫設計 數據庫設計應該遵循規(guī)范化理論的要求,盡量使結構更合理,消除
46、存儲異常,使數據冗余盡量小,便于插入、刪除和更新 。 本系統(tǒng)中共有12張表,它們分別為學生信息表student_info,教師信息表teacher_info,管理員教學秘書信息表manager,開課計劃表course_open,排課計劃表course_arrange,排課計劃明細表course_arrangedetail,選修課狀態(tài)管理表choosecontrol, 選修課修課學生表course_student, 導師對應關系表teacher_student, 學生成績表studentscore, 留言板信息表message_info, 留言板回復信息表message_answer_info。
47、具體表之間的對應關系,如圖3-2所示:圖3-2 數據庫模型圖 其中,需要注意的關系是: (1)一個學生只有一位導師,而一位導師可以指導多名學生。 (2)一個學生可以選修多門課程,一門課程可供多名學生選修。 (3)一個學生有多門課程的成績,一門課程的成績也是多個學生的成績集合。 (4)一門開課可以多次排課,一次排課只屬于一門開課。 (5)一門專業(yè)選修課只有兩種狀態(tài)可選和非可選,一種狀態(tài)為多門專業(yè) 選修課擁有。 (6)一門課程可由多名老師授課,一位老師可以教授多門課程。 (7)一條留言只有一條回復,一條回復只屬于一條留言。1、學生信息表student_info學生信息表存儲軟件學院工程碩士的基本信
48、息,以學生學號作為主鍵,學生學號是以大寫字母X開頭,后跟10位數字作為編碼的,例如X2004369001,X2004369002。選修課修課學生表course_student,導師對應關系表teacher_student和學生成績表studentscore的學生學號stu_id與此表的stu_id外鍵相關聯,當學生信息被刪除時,此學生所選的選修課,對應的導師關系和成績將被刪除。該表詳細的數據描述如表3-1所示:表3-1 學生信息表student_info 詳細數據描述字段名描述類型長度是否允許為空主鍵stu_id學號VARCHAR11否是name名字VARCHAR20否否password登陸密
49、碼VARCHAR45否否class_id所在班級VARCHAR2否否sex性別VARCHAR2否否nationality民族VARCHAR20否否stu_grade年級VARCHAR4否否len_of_schooling學制VARCHAR2否否specialty專業(yè)VARCHAR20否否come_from生源VARCHAR20是否born出生日期VARCHAR45是否charact政治面貌VARCHAR10是否email電子郵件VARCHAR45是否telephone VARCHAR12是否address地址VARCHAR100是否description備注TEXT是否2、教師信息表teach
50、er_info教師信息表存儲軟件學院教師的基本信息,由于教師的工號較復雜,有些4位,有些更多,所以用院內教工號作為主鍵。院內教工號是以4位數字作為編碼的,例如0001,0002。排課計劃明細表course_arrangedetail的任課教師course_teacher,導師對應關系表teacher_student的教工號teacher_id與此表的學院內教工號teacher_id外鍵關聯,當教師信息被刪除時,此教師的排課,相應的導師關系將被刪除。該表詳細的數據描述如表3-2所示:表3-2 教師信息表teacher_info詳細數據描述字段名描述類型長度是否允許為空主鍵teacher_id學院
51、內教工號VARCHAR4否是name名字VARCHAR20否否password登陸密碼VARCHAR45否否college所在學院VARCHAR20否否sex性別VARCHAR2否否place職稱VARCHAR5否否remark備注TEXT是否3、管理員教學秘書信息表manager管理員教學秘書信息表存儲教學秘書的信息。包括了登錄名和密碼。其中登錄名默認為“教學秘書”,登錄后可自行修改密碼。該表詳細的數據描述如表3-2所示:表3-3 管理員教學秘書信息表manager詳細數據描述字段名描述類型長度是否允許為空主鍵manager_id登陸名VARCHAR8否是password登陸密碼VARCHA
52、R45否否4、開課計劃表course_ope開課計劃表存儲了所開課程的基本信息,包括了開課學年,學期,課程的名稱,類型,學時,學分和開課年級。以一個自增的int型字段course_id作為主鍵。排課計劃表course_arrange的課程號course_id與此表的course_id外鍵相關聯。因為開課與排課的關系是有開才能排,有排一定有開,有開不一定有排,所以當要開課的課程被刪除時,相應此課程的排課也會刪除,而當一門課的排課被刪除時,開課計劃表中還會保留此課程的信息。該表詳細的數據描述如表3-4所示:表3-4 開課計劃表course_ope詳細數據描述字段名描述類型長度是否允許為空主鍵cou
53、rse_id課程號INTEGER否是course_name課程名稱VARCHAR45否否course_type課程類型VARCHAR5否否course_grade開課年級VARCHAR4否否course_period開課學年VARCHAR10否否course_season開課學期VARCHAR5否否course_score課程學分INTEGER否否course_long課程學時INTEGER否否course_arrange是否已排課標記VARCHAR1否否course_description課程描述TEXT是否5、排課計劃表course_arrange排課計劃表course_arrange存儲
54、了開課計劃表中需要進行排課的課程信息,包括了課程的上課起始周和結束周。此表的課程號course_id與開課計劃表course_open的課程號course_id外鍵關聯,當開課計劃表course_open的課程數據刪除的時候,排課計劃表course_arrange的相應課程也會被數據庫自動刪除。此表與排課計劃明細表course_arrangedetail共同存儲了一門課程的排課信息:任課老師,上課時間地點等。將排課信息分為兩個表的原因是安排一門課,它的上課的時間即起始周和結束周是一定的。但這門課可以由多個老師一起來上。所以將任課教師,上課時間地點這些信息存入排課計劃明細表,排課計劃明細表是以課程號course_id作為索引字段的,此表沒有任何主鍵,這樣就保證了一門課的多次排課。排課計劃明細表course_arrangedetail的課程號course_id與此表的課程號course
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中學學生社團活動經費使用效益制度
- 企業(yè)內部保密工作流程制度
- 公共交通車輛安全技術檢測制度
- 2026年人工智能算法深度學習應用場景題集
- 2026年工程計價與造價分析一級建造師專業(yè)試題
- 2026年工程項目管理知識與技能考核試題庫
- 2026年英語四六級聽力與閱讀預測模擬題
- 2026年編程馬拉松軟件工程與設計能力實踐試題庫
- 2025年西點展示柜溫度監(jiān)控合同
- 《GMT 0130-2023基于SM2算法的無證書及隱式證書公鑰機制》專題研究報告
- 2026河北石家莊技師學院選聘事業(yè)單位工作人員36人備考考試試題附答案解析
- 云南省2026年普通高中學業(yè)水平選擇性考試調研測試歷史試題(含答案詳解)
- GB 4053.3-2025固定式金屬梯及平臺安全要求第3部分:工業(yè)防護欄桿及平臺
- 明確安全生產領導小組的職責與安全管理體系
- 七年級下冊語文必背古詩文(字帖描紅)
- 電儀施工質量總結
- 《甜花香型大葉種工夫紅茶》編制說明
- QSY06503.14-2020石油煉制與化工裝置工藝設計包編制規(guī)范 - 副本
- 柜式七氟丙烷-氣體滅火系統(tǒng)-安裝與施工-方案
- 核醫(yī)學全身骨顯像骨顯像課件
- 昌樂縣鎮(zhèn)區(qū)基準地價更新修正體系匯編(完整版)資料
評論
0/150
提交評論