版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 在線選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 摘 要</b></p><p> 由于學(xué)校教學(xué)制度的改革,現(xiàn)在大部分高等院校開始實(shí)行的是學(xué)生的自主選課模式,傳統(tǒng)的教學(xué)模式(學(xué)生按照學(xué)校安排好的課程上課)已經(jīng)不能適應(yīng)新型的教學(xué)手段,如果仍然通過紙上的方式選課,一方面浪費(fèi)的大量的人力、物力資源,另一方面浪費(fèi)時(shí)間以及在人為的統(tǒng)計(jì)過程中不可避免
2、出現(xiàn)的差錯(cuò)等情況。隨著高校人數(shù)的增多,這種弊端會(huì)越來越多的暴露出來。在線選課系統(tǒng)的實(shí)現(xiàn)顯得尤為必要。針對(duì)學(xué)生選課這一環(huán)節(jié),本系統(tǒng)從學(xué)生網(wǎng)上自主選課以及教師的課程發(fā)布和管理員信息管理三個(gè)大方面進(jìn)行了設(shè)計(jì),基本實(shí)現(xiàn)了學(xué)生的在線信息查詢、選課功能以及教師對(duì)課程信息發(fā)布的管理和管理員對(duì)學(xué)生和教師信息的管理等功能。</p><p> 關(guān)鍵詞:在線選課;B/S 結(jié)構(gòu);JSP;J2EE;MySQL; </p>
3、<p> Online Course Selection System Design and Implementation</p><p><b> Abstract</b></p><p> As the reform of school education, most colleges and universities are now begi
4、nning to implement the student's own course selection patterns, the traditional teaching model (the students arranged in accordance with school curriculum classes) can not adapt to new teaching methods, if they remai
5、n on paper on the way to course selection, on the one hand and waste a lot of manpower, material resources, on the other hand a waste of time and in the process of artificial statistical errors inevitably o</p>&l
6、t;p> Key Words: Online course selection; B / S structure; JSP; J2EE; MySQL; </p><p><b> 目 錄</b></p><p><b> 摘 要I</b></p><p> AbstractII</p>
7、<p><b> 前 言1</b></p><p><b> 1設(shè)計(jì)的可行性2</b></p><p> 1.1系統(tǒng)的產(chǎn)生和發(fā)展情況2</p><p> 1.2網(wǎng)上選課系統(tǒng)的產(chǎn)生和可行性分析3</p><p> 1.2.1 網(wǎng)上選課系統(tǒng)的產(chǎn)生3</p>
8、<p> 1.2.2 網(wǎng)上選課系統(tǒng)的可行性3</p><p> 2 相關(guān)軟件及技術(shù)介紹4</p><p> 2.1 Myeclipse 6.54</p><p> 2.2 MySQL 5.04</p><p> 2.3 Tomcat 5.55</p><p> 2.4 HTML 語言介紹
9、6</p><p> 2.5 JSP 介紹6</p><p> 2.6 J2EE 技術(shù)介紹7</p><p> 2.7 Struts 框架8</p><p> 2.8 Hibernate 框架9</p><p><b> 3系統(tǒng)概述9</b></p><
10、p> 3.1 項(xiàng)目范圍9</p><p> 3.2 設(shè)計(jì)策略10</p><p> 4系統(tǒng)總體設(shè)計(jì)10</p><p> 4.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)10</p><p> 4.1.2 模塊間的調(diào)用關(guān)系11</p><p> 4.1.3系統(tǒng)功能結(jié)構(gòu)14</p><p>
11、5 數(shù)據(jù)庫設(shè)計(jì)說明15</p><p> 5.1數(shù)據(jù)庫系統(tǒng)分析15</p><p> 5.2 數(shù)據(jù)庫邏輯設(shè)計(jì)19</p><p> 5.3 數(shù)據(jù)庫設(shè)計(jì)20</p><p><b> 6 詳細(xì)設(shè)計(jì)23</b></p><p> 6.1 教師/學(xué)生/管理員登錄功能23</p
12、><p> 6.2 學(xué)生選課功能28</p><p> 6.3 教師添加課程:30</p><p> 6.4 管理員操作32</p><p> 7 設(shè)計(jì)過程中的問題及解決34</p><p> 7.1 數(shù)據(jù)庫的連接34</p><p> 7.2 參數(shù)的傳遞34</p&g
13、t;<p> 7.3 公共數(shù)據(jù)34</p><p><b> 8 總結(jié)35</b></p><p> 參 考 文 獻(xiàn)36</p><p><b> 致 謝37</b></p><p><b> 前 言 </b></p><
14、;p> 隨著網(wǎng)絡(luò)時(shí)代的到來B/S結(jié)構(gòu)的管理系統(tǒng)已經(jīng)成熟的運(yùn)用在學(xué)校、企業(yè)、銀行、科研機(jī)構(gòu)、政府等各行各業(yè)并扮演著不可或缺的角色。</p><p> B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)
15、器端(Server)實(shí)現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。相對(duì)于C/S結(jié)構(gòu)屬于“胖”客戶端,需要在使用者電腦上安裝相應(yīng)的操作軟件來說,B/S結(jié)構(gòu)是屬于一種“瘦”客戶端,大多數(shù)或主要的業(yè)務(wù)邏輯都存在在服務(wù)器端,因此,B/S結(jié)構(gòu)的系統(tǒng)不需要安裝客戶端軟件,它運(yùn)行在客戶端的瀏覽器之上,系統(tǒng)升級(jí)或維護(hù)時(shí)只需更新服務(wù)器端軟件即可,這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(TCO)。 B/S結(jié)構(gòu)系統(tǒng)的產(chǎn)
16、生為系統(tǒng)面對(duì)無限未知用戶提供了可能。當(dāng)然,與C/S結(jié)構(gòu)相比,B/S結(jié)構(gòu)也存在著系統(tǒng)運(yùn)行速度較慢,訪問系統(tǒng)的用戶不可控的弱點(diǎn)。</p><p> 以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過Internet/Intranet模式下數(shù)據(jù)庫應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問
17、和操作共同的數(shù)據(jù)庫;它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫也很安全。特別是在JAVA這樣的跨平臺(tái)語言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、快捷、高效。數(shù)據(jù)庫是從60年代初發(fā)展起來的計(jì)算機(jī)技術(shù)。經(jīng)過四十來年的發(fā)展,數(shù)據(jù)庫技術(shù)己經(jīng)趨于成熟。Web數(shù)據(jù)庫在新的Internet環(huán)境中發(fā)生了很大的變化。就數(shù)據(jù)應(yīng)用而言呈現(xiàn)出多樣化的空間,如數(shù)字圖書館、電子出版物、電子商務(wù)、遠(yuǎn)程教育系統(tǒng)等的出現(xiàn),給web數(shù)據(jù)庫技術(shù)提出了更多、更高的要求。
18、同時(shí),隨著國內(nèi)高校校園網(wǎng)的建設(shè),基于互聯(lián)網(wǎng)的應(yīng)用系統(tǒng)的開發(fā)正在蓬勃發(fā)展并發(fā)揮著較大的作用。例如,我國許多高校的網(wǎng)上招生系統(tǒng),學(xué)校的各種管理信息系統(tǒng),學(xué)校選課系統(tǒng),還有一些醫(yī)學(xué)院校開發(fā)出的網(wǎng)上診所、遠(yuǎn)程診斷系統(tǒng)等等,都是基于校園網(wǎng)的應(yīng)用系統(tǒng)。</p><p> 網(wǎng)上選課系統(tǒng)是針對(duì)在校學(xué)生和教師使用,從學(xué)生的角度來說,由于學(xué)校教學(xué)制度的改革,現(xiàn)在大部分高等院校開始實(shí)行的是學(xué)生的自主選課模式,傳統(tǒng)的教學(xué)模式(學(xué)生按照
19、學(xué)校安排好的課程上課)已經(jīng)不能適應(yīng)新型的教學(xué)手段,如果仍然通過紙上的方式選課,一方面浪費(fèi)的大量的人力、物力資源,另一方面浪費(fèi)時(shí)間以及在人為的統(tǒng)計(jì)過程中不可避免出現(xiàn)的差錯(cuò)等情況。隨著高校人數(shù)的增多,這種弊端會(huì)越來越多的暴露出來。因此,利用網(wǎng)絡(luò),使學(xué)生只要在計(jì)算機(jī)前輸入自己的個(gè)人選課信息即可完成原來幾倍的作業(yè)量。從教師的角度來說,同樣是節(jié)省了大量的工作量,由于教師提出代課申請(qǐng)完成課程發(fā)布的工作較學(xué)生選課而言更加的復(fù)雜,因此通過網(wǎng)上進(jìn)行課程發(fā)
20、布能大幅度的減少教師的工作量,減少錯(cuò)誤的發(fā)生幾率。作為教師,也只要通過自己的電腦來操作即可,不用再奔波于教務(wù)處和辦公室之間。</p><p><b> 1設(shè)計(jì)的可行性</b></p><p> 1.1系統(tǒng)的產(chǎn)生和發(fā)展情況</p><p> 所謂MIS(管理信息系統(tǒng)--Management Information System)系統(tǒng) ,是一
21、個(gè)由人、計(jì)算機(jī)及其他外圍設(shè)備等組成的能進(jìn)行信息的收集、傳遞、存貯、加工、維護(hù)和使用的系統(tǒng),是一門新興的科學(xué),其主要任務(wù)是最大限度的利用現(xiàn)代計(jì)算機(jī)及網(wǎng)絡(luò)通訊技術(shù)加強(qiáng)企業(yè)的信息管理,通過對(duì)企業(yè)擁有的人力、物力、財(cái)力、設(shè)備、技術(shù)等資源的調(diào)查了解,建立正確的數(shù)據(jù),加工處理并編制成各種信息資料及時(shí)提供給管理人員,以便進(jìn)行正確的決策,不斷提高企業(yè)的管理水平和經(jīng)濟(jì)效益。目前,企業(yè)的計(jì)算機(jī)網(wǎng)絡(luò)已成為企業(yè)進(jìn)行技術(shù)改造及提高企業(yè)管理水平的重要手段。隨著我國
22、與世界信息高速公路的接軌,企業(yè)通過計(jì)算機(jī)網(wǎng)絡(luò)獲得信息必將為企業(yè)帶來巨大的經(jīng)濟(jì)效益和社會(huì)效益,企業(yè)的辦公及管理都將朝著高效、快速、無紙化的方向發(fā)展。MIS系統(tǒng)通常用于系統(tǒng)決策,例如,可以利用MIS系統(tǒng)找出目前迫切需要解決的問題,并將信息及時(shí)反饋給上層管理人員,使他們了解當(dāng)前工作發(fā)展的進(jìn)展或不足。換句話說,MIS系統(tǒng)的最終目的是使管理人員及時(shí)了解公司現(xiàn)狀,把握將來的發(fā)展路徑。與傳統(tǒng)的管理系統(tǒng)相比,在MIS中,處理的對(duì)象是抽象成數(shù)據(jù)的信息,因
23、此,MIS有著自己的</p><p> 1、解決結(jié)構(gòu)化問題。 2、以高速度低成本完成數(shù)據(jù)的處理業(yè)務(wù),追求系統(tǒng)處理問題的效率。3、實(shí)現(xiàn)一個(gè)相對(duì)穩(wěn)定的、協(xié)調(diào)的工作環(huán)境。4、應(yīng)用科學(xué)的、客觀的處理方法,符合實(shí)際情況。</p><p> 傳統(tǒng)的MIS系統(tǒng)的核心是CS(Client/Server——客戶端/服務(wù)器)架構(gòu),而基于Internet的MIS系統(tǒng)的核心是BS(Browser/Ser
24、ver——瀏覽器/服務(wù)器)架構(gòu)。BS架構(gòu)比起CS架構(gòu)有著很大的優(yōu)越性,傳統(tǒng)的MIS系統(tǒng)依賴于專門的操作環(huán)境,這意味著操作者的活動(dòng)空間受到極大限制;而BS架構(gòu)則不需要專門的操作環(huán)境,在任何地方,只要能上網(wǎng),就能夠操作MIS系統(tǒng)。這也就給交互式信息的產(chǎn)生創(chuàng)造了先決條件。使得通過互聯(lián)網(wǎng)的信息傳遞更加的便捷。</p><p> 1.2網(wǎng)上選課系統(tǒng)的產(chǎn)生和可行性分析</p><p> 1.2.1
25、 網(wǎng)上選課系統(tǒng)的產(chǎn)生</p><p> MIS系統(tǒng)的飛速發(fā)展,技術(shù)的成熟以及應(yīng)用領(lǐng)域的不斷擴(kuò)大,為網(wǎng)上信息的交互提供了一個(gè)良好的平臺(tái)和方便的操作界面。由于MIS系統(tǒng)基于用戶需求的設(shè)計(jì)方法,使得該系統(tǒng)的使用更加的人性化、個(gè)人化、更貼近用戶。網(wǎng)上選課系統(tǒng)是針對(duì)在校學(xué)生和教師使用,從學(xué)生的角度來說,由于學(xué)校教學(xué)制度的改革,現(xiàn)在大部分高等院校開始實(shí)行的是學(xué)生的自主選課模式,傳統(tǒng)的教學(xué)模式——學(xué)生按照學(xué)校安排好的課程上課
26、——已經(jīng)不能適應(yīng)新型的教學(xué)手段,如果仍然通過紙上的方式選課,一方面浪費(fèi)的大量的人力、物力資源,另一方面浪費(fèi)時(shí)間以及在人為的統(tǒng)計(jì)過程中不可避免出現(xiàn)的差錯(cuò)等情況。隨著高校人數(shù)的增多,這種弊端會(huì)越來越多的暴露出來。因此,利用網(wǎng)絡(luò),使學(xué)生只要在計(jì)算機(jī)前輸入自己的個(gè)人選課信息即可完成原來幾倍的作業(yè)量。從教師的角度來說,同樣是節(jié)省了大量的工作量,由于教師提出代課申請(qǐng)完成課程發(fā)布的工作較學(xué)生選課而言更加的復(fù)雜,因此通過網(wǎng)上進(jìn)行課程發(fā)布能大幅度的減少教
27、師的工作量,減少錯(cuò)誤的發(fā)生幾率。作為教師,也只要通過自己的電腦來操作即可,不用再奔波于教務(wù)處和辦公室之間。以MIS系統(tǒng)的構(gòu)建思想來實(shí)現(xiàn)網(wǎng)上選課系統(tǒng)可以最大程度的做到實(shí)用性,可擴(kuò)展性和可維</p><p> 技術(shù)可行性:以MIS技術(shù)為開發(fā)基礎(chǔ)。</p><p> 1.2.2 網(wǎng)上選課系統(tǒng)的可行性</p><p> ?。?)技術(shù)可行性-----本系統(tǒng)需要掌握J(rèn)ava
28、Script語言、HTML語言、Jsp語言、MVC編程結(jié)構(gòu)思想、Struts框架應(yīng)用、Hibernate 框架應(yīng)用、MySQl數(shù)據(jù)庫設(shè)計(jì)的一般原理和使用方法。這些知識(shí)在大學(xué)專業(yè)課的學(xué)習(xí)中大部分都已學(xué)習(xí)加上自學(xué)的一些技術(shù)知識(shí)和勇于專研不斷努力學(xué)習(xí)的精神完全能做到技術(shù)可行。</p><p> ?。ǎ玻?經(jīng)濟(jì)可行性-----由于本系統(tǒng)是為方便大學(xué)生選課的在線選課系統(tǒng),安裝服務(wù)軟件后,即可使用系統(tǒng),系統(tǒng)成本主要集中在系統(tǒng)
29、軟件的開發(fā)上,當(dāng)系統(tǒng)投入運(yùn)行后可以為學(xué)校節(jié)約大量的人力,物力。所帶來的效益遠(yuǎn)遠(yuǎn)大于系統(tǒng)軟件的開發(fā)成本。在經(jīng)濟(jì)上完全可行。</p><p> (3) 操作可行性-----界面設(shè)計(jì)時(shí)充分考慮管理人員的習(xí)慣,使得操作簡單;數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計(jì)準(zhǔn)確;適應(yīng)力強(qiáng);容易擴(kuò)充。</p><p> (4)硬件軟件設(shè)施可行性------現(xiàn)有一臺(tái)筆記本電腦,以及大量相關(guān)方面知識(shí)的書籍。對(duì)于軟件技術(shù)
30、要求,現(xiàn)在的Jsp以及J2EE平臺(tái)、數(shù)據(jù)庫程序設(shè)計(jì)語言已非常成熟完全可以做到硬件軟件設(shè)施可行。</p><p> 2 相關(guān)軟件及技術(shù)介紹</p><p> 2.1 Myeclipse 6.5</p><p> MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)
31、展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。</p><p> 在結(jié)構(gòu)上,MyEclipse的特征可以被分為7類:</p><p> 1.
32、JavaEE模型</p><p> 2. WEB開發(fā)工具</p><p> 3. EJB開發(fā)工具</p><p> 4. 應(yīng)用程序服務(wù)器的連接器</p><p> 5. JavaEE項(xiàng)目部署服務(wù)</p><p><b> 6. 數(shù)據(jù)庫服務(wù)</b></p><p>
33、 7. MyEclipse整合幫助</p><p> 對(duì)于以上每一種功能上的類別,在Eclipse中都有相應(yīng)的功能部件,并通過一系列的插件來實(shí)現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們?cè)诓挥绊懫渌K的情況下,對(duì)任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級(jí)。</p><p> 簡單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的JavaEE集成開發(fā)環(huán)境,支持代碼編寫、
34、配置、測(cè)試以及除錯(cuò),MyEclipse6.0以前版本需先安裝Eclipse。MyEclipse6.0以后版本安裝時(shí)不需安裝Eclipse。</p><p> 2.2 MySQL 5.0</p><p> MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。在2008年1月16號(hào)被Sun公司收購。而2009年,SUN又被Oracle收購.對(duì)于Mysql的前途,沒有
35、任何人抱樂觀的態(tài)度.目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。MySQL的官方網(wǎng)站的網(wǎng)址是:www.mysql.com</p><p> 與其他的大型數(shù)據(jù)庫例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之處,如規(guī)模小、功能有限(M
36、ySQL Cluster的功能和效率都相對(duì)比較差)等,但是這絲毫也沒有減少它受歡迎的程度。對(duì)于一般的個(gè)人使用者和中小型企業(yè)來說,MySQL提供的功能已經(jīng)綽綽有余,而且由于MySQL是開放源碼軟件,因此可以大大降低總體擁有成本。</p><p> 目前Internet上流行的網(wǎng)站構(gòu)架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作為操作系統(tǒng),Apache作為Web服務(wù)器,MySQ
37、L作為數(shù)據(jù)庫,PHP作為服務(wù)器端腳本解釋器。由于這四個(gè)軟件都是自由或開放源碼軟件(FLOSS),因此使用這種方式不用花一分錢就可以建立起一個(gè)穩(wěn)定、免費(fèi)的網(wǎng)站系統(tǒng)。</p><p> 2.3 Tomcat 5.5</p><p> Tomcat是Apache 軟件基金會(huì)(Apache Software Foundation)的Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun
38、和其他一些公司及個(gè)人共同開發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因?yàn)門omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。目前最新版本是6.0。</p><p> Tomcat 很
39、受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的 </p><p> 改進(jìn)和完善中,任何一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。</p><p> Tomcat 是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場(chǎng)合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來說,可
40、以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML 頁面的訪問請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。 </p><p> 這里的訣竅是,當(dāng)配置正確時(shí),Apache 為HTML頁面服務(wù),而Tomcat 實(shí)際上運(yùn)行JSP 頁面和Servlet。另外,Tomcat和II
41、S、Apache等Web服務(wù)器一樣,具有處理HTML頁面的功能,另外它還是一個(gè)Servlet和JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模式。不過,Tomcat處理靜態(tài)HTML的能力不如Apache服務(wù)器。</p><p> 2.4 HTML 語言介紹</p><p> HTML(HyperText Mark-up Language)即超文本標(biāo)記語言或超文本鏈接標(biāo)示語言,
42、是目前網(wǎng)絡(luò)上應(yīng)用最為廣泛的語言,也是構(gòu)成網(wǎng)頁文檔的主要語言。HTML文本是由HTML命令組成的描述性文本,HTML命令可以說明文字、圖形、動(dòng)畫、聲音、表格、鏈接等。HTML的結(jié)構(gòu)包括頭部(Head)、主體(Body)兩大部分,其中頭部描述瀏覽器所需的信息,而主體則包含所要說明的具體內(nèi)容。</p><p> HTML文檔制作不是很復(fù)雜,且功能強(qiáng)大,支持不同數(shù)據(jù)格式的文件鑲?cè)?,這也是WWW盛行的原因之一,其主要特點(diǎn)
43、如下:</p><p> 1 簡易性,HTML版本升級(jí)采用超集方式,從而更加靈活方便。</p><p> 2 可擴(kuò)展性,HTML語言的廣泛應(yīng)用帶來了加強(qiáng)功能,增加標(biāo)識(shí)符等要求,HTML采取子類元素的方式,為系統(tǒng)擴(kuò)展帶來保證。</p><p> 3 平臺(tái)無關(guān)性。雖然PC機(jī)大行其道,但使用MAC等其他機(jī)器的大有人在,HTML可以使用在廣泛的平臺(tái)上,這也是WWW盛行
44、的另一個(gè)原因。用什么可以編輯HTML?</p><p> HTML其實(shí)是文本,它需要瀏覽器的解釋,HTML的編輯器大體可以分為三種,</p><p> 1 基本編輯軟件,使用WINDOWS自帶的記事本或?qū)懽职娑伎梢跃帉懀?dāng)然,如果你用WPS來編寫,也可以。不過存盤是請(qǐng)使用.htm或.html作為擴(kuò)展名,這樣瀏覽器就可以解釋執(zhí)行了。</p><p> 2 半所見
45、即所得軟件,這種軟件能大大提高開發(fā)效率,它可以使你在很短的時(shí)間內(nèi)做出HOMEPAGE,且可以學(xué)習(xí)HTML,這種類型的軟件主要有HOTDOG,還有國產(chǎn)的軟件網(wǎng)頁作坊。</p><p> 3 所見即所得軟件,使用最廣泛的編輯器,完全可以一點(diǎn)不懂HTML的知識(shí)就可以做出網(wǎng)頁,這類軟件主要有FRONTPAGE98,DREAMWEAVER。</p><p> 2.5 JSP 介紹</p&
46、gt;<p> JSP(Java Server Pages)是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。 用JSP開發(fā)的Web應(yīng)用是跨平臺(tái)的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。
47、</p><p> JSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。 </p><p> Web服務(wù)器在遇到訪問JSP網(wǎng)頁的請(qǐng)求時(shí),首先執(zhí)行其中
48、的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁所需要的功能。 </p><p> JSP與Java Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回該客戶端的就是一個(gè)HTML文本,因此客戶端只要有瀏覽器就能瀏覽。 </p><p> JSP的1.0規(guī)范的最后版本是1999年9月推出的,12月又
49、推出了1.1規(guī)范。目前較新的是JSP1.2規(guī)范,JSP2.0規(guī)范的征求意見稿也已出臺(tái)。</p><p> JSP頁面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁面被客戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁面返回給客戶端的瀏覽器。Java Servlet 是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)
50、的簡單易用,完全的面向?qū)ο螅哂衅脚_(tái)無關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。 </p><p> 自JSP推出后,眾多大公司都支持JSP技術(shù)的服務(wù)器,如IBM、Oracle、Bea公司等,所以JSP迅速成為商業(yè)應(yīng)用的服務(wù)器端語言。</p><p> JSP可用一種簡單易懂的等式表示為:HTML+Java=JSP。</p><p> 2.6 J2EE 技術(shù)介
51、紹</p><p> J2EE Java2平臺(tái)企業(yè)版(Java 2 Platform,Enterprise Edition) </p><p> J2EE是一套全然不同于傳統(tǒng)應(yīng)用開發(fā)的技術(shù)架構(gòu),包含許多組件,主要可簡化且規(guī)范應(yīng)用系統(tǒng)的開發(fā)與部署,進(jìn)而提高可移植性、安全與再用價(jià)值。 </p><p> J2EE核心是一組技術(shù)規(guī)范與指南,其中所包含的各類組件、服務(wù)
52、架構(gòu)及技術(shù)層次,均有共通的標(biāo)準(zhǔn)及規(guī)格,讓各種依循J2EE架構(gòu)的不同平臺(tái)之間,存在良好的兼容性,解決過去企業(yè)后端使用的信息產(chǎn)品彼此之間無法兼容,,企業(yè)內(nèi)部或外部難以互通的窘境。</p><p><b> 一、J2EE的概念</b></p><p> 目前,Java 2平臺(tái)有3個(gè)版本,它們是適用于小型設(shè)備和智能卡的Java 2平臺(tái)Micro版(Java 2 Platf
53、orm Micro Edition,J2ME)、適用于桌面系統(tǒng)的Java 2平臺(tái)標(biāo)準(zhǔn)版(Java 2 Platform Standard Edition,J2SE)、適用于創(chuàng)建服務(wù)器應(yīng)用程序和服務(wù)的Java 2平臺(tái)企業(yè)版(Java 2 Platform Enterprise Edition,J2EE)。J2EE是一種利用Java 2平臺(tái)來簡化企業(yè)解決方案的開發(fā)、部署和管理相關(guān)的復(fù)雜問題的體系結(jié)構(gòu)。J2EE技術(shù)的基礎(chǔ)就是核心Java平臺(tái)或
54、Java 2平臺(tái)的標(biāo)準(zhǔn)版,J2EE不僅鞏固了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn),例如"編寫一次、隨處運(yùn)行"的特性、方便存取數(shù)據(jù)庫的JDBC API、CORBA技術(shù)以及能夠在Internet應(yīng)用中保護(hù)數(shù)據(jù)的安全模式等等,同時(shí)還提供了對(duì) EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技術(shù)的全面支持。其最終目的就是成為一個(gè)能夠使企業(yè)開發(fā)者大幅縮
55、短投放市場(chǎng)時(shí)間的體系結(jié)</p><p> J2體系結(jié)構(gòu)提供中間層集成框架用來滿足無需太多費(fèi)用而又需要高可用性、高可靠性以及可擴(kuò)展性的應(yīng)用的需求。通過提供統(tǒng)一的開發(fā)平臺(tái),J2EE降低了開發(fā)多層應(yīng)用的費(fèi)用和復(fù)雜性,同時(shí)提供對(duì)現(xiàn)有應(yīng)用程序集成強(qiáng)有力支持,完全支持Enterprise JavaBeans,有良好的向?qū)еС执虬筒渴饝?yīng)用,添加目錄支持,增強(qiáng)了安全機(jī)制,提高了性能。</p><p>
56、 2.7 Struts 框架</p><p> Struts最早是作為Apache Jakarta項(xiàng)目的組成部分,項(xiàng)目的創(chuàng)立者希望通過對(duì)該項(xiàng)目的研究,改進(jìn)和提高JavaServer Pages 、Servlet、標(biāo)簽庫以及面向?qū)ο蟮募夹g(shù)水準(zhǔn)。Struts這個(gè)名字來源于在建筑和舊式飛機(jī)中使用的支持金屬架。這個(gè)框架之所以叫"Struts",是為了提醒我們記住那些支撐我們房屋,建筑,橋梁,甚至我
57、們踩高蹺時(shí)候的基礎(chǔ)支撐。這也是一個(gè)解釋Struts在開發(fā)Web應(yīng)用程序中所扮演的角色的精彩描述。當(dāng)建立一個(gè)物理建筑時(shí),建筑工程師使用支柱為建筑的每一層提供支持。同樣,軟件工程師使用Struts為業(yè)務(wù)應(yīng)用的每一層提供支持。它的目的是為了幫助我們減少在運(yùn)用MVC設(shè)計(jì)模型來開發(fā)Web應(yīng)用的時(shí)間。我們?nèi)匀恍枰獙W(xué)習(xí)和應(yīng)用該架構(gòu),不過它將可以完成其中一些繁重的工作。如果想混合使用Servlets和JSP的優(yōu)點(diǎn)來建立可擴(kuò)展的應(yīng)用,Struts是一個(gè)不
58、錯(cuò)的選擇。</p><p> 早期Smalltalk 程序語言便采用了MVC(Model-View -Controller) 模式( Patterns ) 以增加程序代碼彈性,MVC模式將程序代碼整理切割為三部份,Model 部分是業(yè)務(wù)與應(yīng)用領(lǐng)域( Business domain) 相關(guān)邏輯、管理狀態(tài)之對(duì)象,Controller 部分接收來自View 所輸入的資料并與Model 部分互動(dòng),是業(yè)務(wù)流程控制( Fl
59、ow Control) 之處,View 部分則負(fù)責(zé)展現(xiàn)資料、接收使用者輸入資料。在Java 應(yīng)用中,JFC/Swing、AWT、JSP 皆是可用作View 之技術(shù)規(guī)格,而JavaBean 與Enterprise JavaBean 規(guī)格則可用于Model 程序代碼,一旦應(yīng)用程序以MVC 模式加以適當(dāng)(的)分割,Model 部分程序代碼可在不同使用者接口外觀(的)應(yīng)用程序中重復(fù)使用。</p><p> 2.8 Hi
60、bernate 框架</p><p> Hibernate是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來操縱數(shù)據(jù)庫。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,
61、完成數(shù)據(jù)持久化的重任。</p><p><b> 3系統(tǒng)概述</b></p><p><b> 3.1 項(xiàng)目范圍</b></p><p> 網(wǎng)上選課系統(tǒng)從功能上劃分一共有4個(gè)主模塊,其中信息管理部分包含了4個(gè)子模快,具體的結(jié)構(gòu)示意如下列所示: </p><p><b> ·
62、;身份驗(yàn)證</b></p><p><b> ·選課</b></p><p><b> ·信息管理</b></p><p><b> ·信息瀏覽</b></p><p><b> ·信息查詢</b>
63、;</p><p><b> ·信息修改</b></p><p><b> ·修改</b></p><p><b> ·刪除</b></p><p><b> ·信息添加</b></p><
64、;p><b> ·課程發(fā)布</b></p><p> 從對(duì)象上劃分一共有教師、學(xué)生、管理員三部分,主要操作為課程發(fā)布和選課。</p><p><b> 3.2 設(shè)計(jì)策略</b></p><p><b> 硬件環(huán)境:</b></p><p><b&
65、gt; 服務(wù)器端/客戶端:</b></p><p> 處理器:Intel Core </p><p><b> 內(nèi)存: 1G</b></p><p><b> 硬盤空間:160G</b></p><p><b> 軟件環(huán)境:</b></p>
66、<p><b> 服務(wù)器端/客戶端:</b></p><p> 操作系統(tǒng):Windows XP</p><p> 網(wǎng)絡(luò)協(xié)議:TCP/IP</p><p> 瀏覽器:Internet Explore 6.0</p><p> 制作工具:Myeclipse 6.5、MySQL5.5 、Tomcat 5.
67、5、Dreamweave 8、Jsp、 HTML(Hyper Text Markup Language)</p><p> 用MyEclipse6.5 集成開發(fā)工具完成網(wǎng)上選課系統(tǒng)的業(yè)務(wù)邏輯、持久化層代碼的編寫,用HTML、jsp語言設(shè)計(jì)網(wǎng)頁的外觀構(gòu)架和輸出輸入功能實(shí)現(xiàn),在網(wǎng)頁編輯器中嵌入JavaScript語言對(duì)網(wǎng)頁中提交的數(shù)據(jù)進(jìn)行驗(yàn)證處理,在系統(tǒng)的后臺(tái),用MysQL 5.5作為數(shù)據(jù)庫支持,提供基本的表信息,
68、使用時(shí),啟動(dòng)Tomcat 5.5 打開瀏覽器(Internet Explore),在地址欄中輸入“http://localhost:8080/OnlineChoose”(由于服務(wù)器和客戶端都在同一臺(tái)計(jì)算機(jī)上所以使用http://localost:8080 訪問本地),回車后,即可進(jìn)入網(wǎng)上選課系統(tǒng)的主頁,進(jìn)行操作。</p><p><b> 4系統(tǒng)總體設(shè)計(jì)</b></p>&l
69、t;p> 4.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)</p><p> 身份驗(yàn)證:通過登錄才可進(jìn)入選課系統(tǒng),登錄信息提交后檢驗(yàn)登錄者的身份是否合法,合法,則轉(zhuǎn)入對(duì)應(yīng)的操作界面。在本系統(tǒng)中,只有三種身份:學(xué)生、老師、管理員。</p><p> 選課:用于學(xué)生的網(wǎng)上選課,查看被選專業(yè)的課程,完成該學(xué)期的選課任務(wù)。</p><p><b> 信息管理:</b>
70、;</p><p> 信息瀏覽:信息瀏覽包括</p><p> 學(xué)生:已選課程瀏覽、備選課程瀏覽 。教師:已發(fā)布課程信息瀏覽。已選課程瀏覽是為學(xué)生提供的查看自己已經(jīng)選擇的課程信息。被選課程瀏覽用于學(xué)生修改、重新選擇課程。已發(fā)布課程信息瀏覽用于各老師查詢自己已經(jīng)發(fā)布的課程信息,主要用于瀏覽、核對(duì)。</p><p> 信息查詢:信息查詢包括教師個(gè)人信息查詢、課程查
71、詢、選課名單查詢。課程查詢即通過 課程編碼(唯一)來查詢?cè)撜n程的相關(guān)介紹,包括課程名稱、所屬院系、上課時(shí)間、上課地點(diǎn)、選課人數(shù)、總?cè)藬?shù)、學(xué)時(shí)、學(xué)分、任課教師等內(nèi)容。教師個(gè)人信息是通過教師ID來查詢對(duì)應(yīng)的老師個(gè)人信息,包括教師賬號(hào)、教師密碼、教師姓名、教師性別、所屬教研室、所屬學(xué)院等。通過選課名單的查詢可以查看選擇某一門課程的學(xué)生情況。</p><p><b> 信息修改:</b></
72、p><p> 修改:信息修改包括選課信息的修改,課程發(fā)布信息的修改,密碼的修改,學(xué)生信息的修改,教師信息的修改。選課信息的修改用于學(xué)生修改所選課程刪除已選課程。教師修改已發(fā)布課程信息。管理員添加學(xué)生信息、修改學(xué)生信息、刪除學(xué)生信息、添加教師信息、修改教師信息、刪除教師信息。</p><p> 課程發(fā)布:課程發(fā)布用于教師發(fā)布新的課程信息,新課程信息發(fā)布后,當(dāng)學(xué)生選課時(shí)即可看到發(fā)布的信息(以列
73、表的形式同其他課程信息一起列出)。</p><p> 4.1.2 模塊間的調(diào)用關(guān)系</p><p> 1.管理員功能模塊 如圖 4-1 所示:</p><p> 圖 4-1管理員功能模塊</p><p> 2.學(xué)生功能模塊 如圖 4-2 所示:</p><p> 圖 4-2學(xué)生功能模塊</p>
74、<p> 3.教師功能模塊 如圖 4-3 所示:</p><p> 圖 4-3教師功能模塊</p><p> 4.1.3系統(tǒng)功能結(jié)構(gòu)</p><p> 1.管理員界面 如圖 4-4 所示:</p><p> 圖 4-4 管理員界面</p><p> 2.學(xué)生操作界面 如圖 4-5 所示:&
75、lt;/p><p> 圖 4-5 學(xué)生操作界面</p><p> 3.教師操作界面 如圖 4-6 所示:</p><p> 圖 4-6 教師操作界面</p><p><b> 5 數(shù)據(jù)庫設(shè)計(jì)說明</b></p><p> 數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲(chǔ)和管理數(shù)據(jù)的倉庫
76、,它產(chǎn)生于距今五十年前,隨著信息技術(shù)和市場(chǎng)的發(fā)展,特別是二十世紀(jì)九十年代以后,數(shù)據(jù)管理不再僅僅是存儲(chǔ)和管理數(shù)據(jù),而轉(zhuǎn)變成用戶所需要的各種數(shù)據(jù)管理的方式。數(shù)據(jù)庫有很多種類型,從最簡單的存儲(chǔ)有各種數(shù)據(jù)的表格到能夠進(jìn)行海量數(shù)據(jù)存儲(chǔ)的大型數(shù)據(jù)庫系統(tǒng)都在各個(gè)方面得到了廣泛的應(yīng)用。在線選課系統(tǒng)的核心就是用來存儲(chǔ)所有信息的數(shù)據(jù)庫。本系統(tǒng)用的是輕量級(jí)開源數(shù)據(jù)庫MySQl 5.0。</p><p> 5.1數(shù)據(jù)庫系統(tǒng)分析<
77、/p><p> 本系統(tǒng)的數(shù)據(jù)庫實(shí)體主要有“學(xué)生”、“管理員”、“教師”、“課程”等。其中“教師”與“課程”存在“開設(shè)”聯(lián)系,并且一個(gè)教師可以開設(shè)N門課程,即“教師”與“課程”之間是一對(duì)多的關(guān)系。一個(gè)學(xué)生可以學(xué)習(xí)N門課程,一門課程可以有M個(gè)學(xué)生學(xué)習(xí),即“學(xué)生”與“課程”之間是多對(duì)多的關(guān)系。</p><p> 整個(gè)數(shù)據(jù)庫可以用一個(gè)E-R圖表示,如圖 5-1 所示:</p><
78、;p> 圖5-1 數(shù)據(jù)庫ER圖</p><p> E—R圖中的實(shí)體圖:</p><p> 1.學(xué)生實(shí)體 如圖 5-2 所示:</p><p> 圖 5-2 學(xué)生實(shí)體</p><p> 2.教師實(shí)體 如圖 5-3 所示:</p><p> 圖 5-3 教師實(shí)體</p><p>
79、 3.課程實(shí)體 如圖 5-4 所示:</p><p> 圖 5-4 課程實(shí)體</p><p> 4.選課實(shí)體 如圖 5-5 所示:</p><p> 圖 5-5 選課實(shí)體</p><p> 5.管理員實(shí)體 如圖 5-6 所示:</p><p> 圖 5-6 管理員實(shí)體</p><p&g
80、t; 5.2 數(shù)據(jù)庫邏輯設(shè)計(jì)</p><p> 數(shù)據(jù)庫邏輯設(shè)計(jì)就是將E—R圖轉(zhuǎn)換為關(guān)系模型的過程,即將所有實(shí)體和關(guān)系轉(zhuǎn)換成一系列的關(guān)系模式。轉(zhuǎn)換過程中常見規(guī)則有:</p><p> (1)一個(gè)實(shí)體型轉(zhuǎn)換為一個(gè)關(guān)系模式;</p><p> ?。?)一個(gè)一對(duì)一的聯(lián)系可轉(zhuǎn)換成一個(gè)獨(dú)立的關(guān)系模式,也可與任意一端對(duì)應(yīng)的關(guān)系模式合并;</p><p&g
81、t; ?。?)一個(gè)一對(duì)多的聯(lián)系可以轉(zhuǎn)換成一個(gè)獨(dú)立的關(guān)系模式,也可與多的那一端對(duì)應(yīng)的關(guān)系模式合并;</p><p> ?。?)一個(gè)多對(duì)多的關(guān)系轉(zhuǎn)換成一個(gè)關(guān)系模式。</p><p> 根據(jù)以上四條規(guī)則,下面將E—R圖轉(zhuǎn)換成關(guān)系模型。</p><p> 對(duì)于“教師”、“課程”和兩者之間的關(guān)系,就可以根據(jù)規(guī)則(3)轉(zhuǎn)換成兩個(gè)關(guān)系模式</p><p&g
82、t; 教師(教師ID,教師賬號(hào),教師密碼,教師姓名,教師性別,所屬教研室,所屬學(xué)院)</p><p> 課程(課程ID,教師ID,課程名稱,上課時(shí)間,上課地點(diǎn),選課人數(shù),學(xué)時(shí),學(xué)分,總?cè)藬?shù))</p><p> 對(duì)于“學(xué)生”、“課程”和它們之間的“選修”關(guān)系就可以規(guī)則(4)轉(zhuǎn)換成三個(gè)關(guān)系模式。</p><p> 學(xué)生(學(xué)生ID,學(xué)號(hào),學(xué)生姓名,學(xué)生性別,班級(jí),
83、學(xué)生密碼,所屬學(xué)院)</p><p> 課程(課程ID,教師ID,課程名稱,上課時(shí)間,上課地點(diǎn),選課人數(shù),總?cè)藬?shù),所屬學(xué)院,學(xué)時(shí),學(xué)分)</p><p> 選課(學(xué)生ID,課程ID)</p><p> 管理員(管理員ID,管理員帳號(hào),管理員密碼)</p><p><b> 5.3 數(shù)據(jù)庫設(shè)計(jì)</b></p&
84、gt;<p> 經(jīng)過數(shù)據(jù)庫系統(tǒng)分析和邏輯設(shè)計(jì)后,數(shù)據(jù)庫的結(jié)構(gòu)已經(jīng)非常清晰,剩下的就是用一種數(shù)據(jù)庫軟件實(shí)現(xiàn)這樣的結(jié)構(gòu)。本系統(tǒng)數(shù)據(jù)庫采用ERStudio 8.0 輔助實(shí)現(xiàn)。</p><p> 如圖 5-1、5-2 所示: </p><p> 圖 5-1數(shù)據(jù)庫表關(guān)系</p><p> 圖 5-2數(shù)據(jù)庫表關(guān)系</p><p>
85、 (1)student_tab表。student_tab表用來存儲(chǔ)學(xué)生的個(gè)人信息,使用學(xué)生編號(hào)作為主鍵包括學(xué)號(hào),學(xué)生姓名,學(xué)生性別,學(xué)生班級(jí),學(xué)生密碼,所屬院系,如表5-3 所示: </p><p> 表5-3 student_tab 表</p><p> ?。?)teacher_tab表。teacher_tab表用來存儲(chǔ)教師的個(gè)人信息,教師編號(hào)作為主鍵包括教師賬號(hào),教師密碼,教師姓名,
86、教師性別,所屬教研室,所屬學(xué)院,如表5-3-4所示:</p><p> 表5-4 teacher_tab 表</p><p> ?。?)course_tab表。course_tab表用來存儲(chǔ)課程信息,course_tab表以課程編號(hào)為主鍵,設(shè)置課程編號(hào)自動(dòng)增加1(通過建表的時(shí)候?qū)傩粤性O(shè)置“標(biāo)識(shí)”,并設(shè)置“標(biāo)識(shí)遞增量”為1)。表中開課教師Id為外鍵,所有“Teacher_Id”的值必須是
87、Teacher表中的“Teacher_Id”值 包括上課時(shí)間,上課地點(diǎn),選課人數(shù),總?cè)藬?shù),所屬學(xué)院,學(xué)時(shí),學(xué)分,課程名稱,教師ID(外鍵)。如表5-5 所示:</p><p> 表5-5 course_tab 表</p><p> ?。?)elective_tab表。elective_tab表用于存儲(chǔ)學(xué)生的選課信息,在elective_tab表中學(xué)生編號(hào)是外鍵,course_tab_id
88、即是主鍵又是外鍵。如表5-6 所示:</p><p> 表5-6 elective_tab 表</p><p> (5)admin表。admin表用來存放系統(tǒng)管理員信息,包括管理員ID,管理員賬號(hào),管理員密碼。如表5-7 所示:</p><p> 表5-7 admin 表</p><p><b> 6 詳細(xì)設(shè)計(jì)</b&
89、gt;</p><p> 6.1 教師/學(xué)生/管理員登錄功能</p><p> 在登錄頁面對(duì)應(yīng)的地方輸入用戶名、密碼,確認(rèn)后登錄。先用javaScript判斷輸入信息是否為空為空返回錯(cuò)誤提示若不為空。 提交表單提交后Struts 框架通過攔截提交表單地址查找映射文件 struts-config.xml,對(duì)應(yīng)的Action處理類,中通過調(diào)用在Hibernate框架基礎(chǔ)上構(gòu)建的持久化層中的
90、數(shù)據(jù)庫查詢方法對(duì)輸入的賬號(hào)密碼與數(shù)據(jù)庫中進(jìn)行比對(duì)。若檢索到的記錄集為空,則說明教師賬號(hào)/學(xué)號(hào)/管理員賬號(hào)信息錯(cuò)誤,從而轉(zhuǎn)到相應(yīng)的出錯(cuò)處理程序,若記錄集不為空,則轉(zhuǎn)入教師/學(xué)生/管理員登錄成功的操作頁面,并將姓名,密碼,/學(xué)號(hào),姓名/管理員賬號(hào)以session對(duì)象保存起來。</p><p> 出錯(cuò)及處理:在該模塊中可能發(fā)生的錯(cuò)誤有</p><p> 學(xué)號(hào)或密碼錯(cuò)誤,系統(tǒng)這時(shí)會(huì)提醒“用戶名
91、或密碼錯(cuò)誤”</p><p><b> 實(shí)例截圖:</b></p><p><b> 學(xué)生登錄</b></p><p> 功能介紹:本頁面主要功能為學(xué)生的登錄窗口。擁有兩個(gè)可輸入框分別輸入學(xué)生的賬號(hào)和密碼。有三個(gè)按鈕分別是登錄重置和注冊(cè)。輸入完賬號(hào)密碼點(diǎn)擊登錄即可提交。點(diǎn)擊重置可以清空輸入框。點(diǎn)擊注冊(cè)跳轉(zhuǎn)到注冊(cè)界面。
92、如圖6-1所示:</p><p> 圖6-1 學(xué)生登錄界面</p><p><b> 2.登錄出錯(cuò)界面</b></p><p> 功能介紹:當(dāng)提交的賬號(hào)和密碼不錯(cuò)再或者不匹配時(shí)回返回登錄窗口要求用戶從新輸入并顯示錯(cuò)誤信息 “用戶名或密碼錯(cuò)誤”。 如 圖6-2 所示:</p><p> 圖6-2 登錄錯(cuò)誤提示界面&
93、lt;/p><p><b> 登錄成功界面</b></p><p> 功能介紹:當(dāng)所輸入的賬號(hào)和密碼相匹配時(shí)通過驗(yàn)證返回登錄成功界面即學(xué)生功能界面該界面顯示了學(xué)生的姓名。現(xiàn)在可選的課程 列出了課程名、總?cè)藬?shù)、剩余人數(shù)學(xué)時(shí)、學(xué)分、任課教師、上課地點(diǎn)和上課時(shí)間等。并且每條后面都有選課的超級(jí)鏈接。如圖6-3 所示:</p><p> 圖6-3 登
94、陸成功進(jìn)入選課界面</p><p><b> 4.教師登陸頁面</b></p><p> 功能介紹:本頁面主要功能為教師的登錄窗口。擁有兩個(gè)可輸入框分別輸入學(xué)生的賬號(hào)和密碼。有三個(gè)按鈕分別是登錄重置和注冊(cè)。輸入完賬號(hào)密碼點(diǎn)擊登錄即可提交。點(diǎn)擊重置可以清空輸入框。點(diǎn)擊注冊(cè)跳轉(zhuǎn)到注冊(cè)界面如圖6-4所示 :</p><p> 圖6-4 教師登錄
95、界面</p><p> 5.教師登錄錯(cuò)誤界面</p><p> 功能介紹:當(dāng)提交的賬號(hào)和密碼不錯(cuò)再或者不匹配時(shí)回返回登錄窗口要求用戶從新輸入并顯示錯(cuò)誤信息 “用戶名或密碼錯(cuò)誤”。如 圖6-5 所示:</p><p> 圖6-5 教師登錄錯(cuò)誤界面</p><p> 6.教師登錄登陸成功進(jìn)入管理界面</p><p>
96、; 功能介紹:當(dāng)所輸入的賬號(hào)和密碼相匹配時(shí)通過驗(yàn)證返回登錄成功界面即教師功能界面該界面顯示了教師的姓名。教師現(xiàn)在可以查看已被學(xué)生選的自己所發(fā)布的課程。還可以點(diǎn)擊發(fā)布課程發(fā)布新課程。圖6-6 所示:</p><p> 圖6-6 教師管理界面</p><p><b> 7.管理員登錄界面</b></p><p> 功能介紹:本頁面主要功能為
97、管理員的登錄窗口。擁有兩個(gè)可輸入框分別輸入管理員的賬號(hào)和密碼。有一個(gè)登錄按鈕。輸入完賬號(hào)密碼點(diǎn)擊登錄即可提交。</p><p> 如 圖6-7 所示:</p><p> 圖6-7 管理員登錄界面</p><p> 8.管理員登錄成功進(jìn)入后臺(tái)管理界面 </p><p> 功能介紹:當(dāng)所輸入的賬號(hào)和密碼相匹配時(shí)通過驗(yàn)證返回登錄成功界面即
98、管理員功能界面該界面顯示了當(dāng)前管理員的姓名。管理員現(xiàn)在可以選擇管理教師、管理學(xué)生或者管理課程 點(diǎn)擊后跳轉(zhuǎn)到相應(yīng)管理界面 如 圖6-8 所示:</p><p> 圖6-8 管理員后臺(tái)管理界面</p><p> 6.2 學(xué)生選課功能</p><p> 學(xué)生登錄界面以及代碼與教師登錄界面相似在這里不再復(fù)述當(dāng)學(xué)生成功登錄后可以使用選課功能。</p>&l
99、t;p> 1.學(xué)生選課功能界面</p><p> 功能介紹:當(dāng)所輸入的賬號(hào)和密碼相匹配時(shí)通過驗(yàn)證返回登錄成功界面即學(xué)生功能界面該界面顯示了學(xué)生的姓名?,F(xiàn)在可選的課程 列出了課程名、總?cè)藬?shù)、剩余人數(shù)學(xué)時(shí)、學(xué)分、任課教師、上課地點(diǎn)和上課時(shí)間等。并且每條后面都有選課的超級(jí)鏈接。點(diǎn)擊所要選的課程后面的選課鏈接。如圖6-9 所示:</p><p> 圖6-9 學(xué)生選課功能界面</
100、p><p> 2.點(diǎn)擊選課即可選擇該課程</p><p> 功能介紹:顯示待選課程信息課程名、總?cè)藬?shù)、剩余人數(shù)、學(xué)時(shí)、學(xué)分、任課教師、上課地點(diǎn)和上課時(shí)間等。并提示上次選課操作是否成功,本系統(tǒng)僅限選擇一門課程 如 圖6-10所示:</p><p> 圖6-10 選課成功界面</p><p> 3.查看已選課程信息</p>&l
101、t;p> 功能介紹:查看已選的課程信息。顯示該課程的課程名、學(xué)分、學(xué)時(shí)、上課地點(diǎn)和上課時(shí)間等。如 圖6-11 所示:</p><p> 圖6-11 查看已選課程信息</p><p> 6.3 教師添加課程:</p><p><b> 1.教師添加課</b></p><p> 功能介紹:本界面面顯示了教師的
102、姓名。教師現(xiàn)在可以查看已被學(xué)生選的自己所發(fā)布的課程。還可以點(diǎn)擊發(fā)布課程發(fā)布新課程。點(diǎn)擊發(fā)布課程。如圖6-12所示:</p><p> 圖6-12 教師管理界面</p><p> 2.教師發(fā)布課程信息</p><p> 功能介紹:本頁面用于教師對(duì)課程信息的發(fā)布。具有填寫課程名稱、上課時(shí)間、上課地點(diǎn)、學(xué)時(shí)、學(xué)分、總?cè)藬?shù)的輸入框。有一個(gè)添加按鈕。點(diǎn)擊用于提交所輸內(nèi)容
103、。如 圖6-13所示 :</p><p> 圖6-13 發(fā)布課程信息</p><p> 3.課程信息發(fā)布成功 </p><p> 功能介紹:本頁面用于查看已選記錄和發(fā)布課程。并且提示上條課程信息是否發(fā)布成功如圖6-14所示:</p><p> 圖6-14 課程信息添加成功界面</p><p> 4.查看已選該
104、老師課程記錄</p><p> 功能介紹:該界面顯示了教師的姓名。教師現(xiàn)在可以查看已被學(xué)生選的自己所發(fā)布的課程。顯示了該課程的名稱,選擇該課程學(xué)生的姓名、性別、學(xué)號(hào)和所屬班級(jí)。如圖6-15 所示: </p><p> 圖6-15 查看選該教師課程及學(xué)生信息</p><p><b> 6.4 管理員操作</b></p><
105、;p> 1.添加教師/編輯教師信息操作界面</p><p> 功能介紹:本頁面主要用于添加教師信息和編輯教師信息。具有用于添加教師姓名的輸入框、選擇教師性別的下拉菜單、用于填寫教師賬號(hào)的輸入框和選擇教師院系的下拉菜單以及用于提交輸入信息的添加按鈕。還有顯示教師信息的區(qū)域用于顯示教師姓名、性別、賬號(hào)、所屬學(xué)院以及修改和刪除操作的快捷方式如圖6-16 所示:</p><p> 圖6
106、-16 添加/編輯教師信息操作界面</p><p> 2.管理員添加學(xué)生/編輯學(xué)生信息界面</p><p> 功能介紹:本頁面主要用于添加學(xué)生信息和編輯學(xué)生信息。具有用于添加學(xué)生姓名的輸入框、選擇學(xué)生性別的下拉菜單、用于填寫學(xué)生學(xué)號(hào)的輸入框、用于填寫班級(jí)信息的輸入框和選擇學(xué)生院系的下拉菜單以及用于提交輸入信息的添加按鈕。如圖6-17所示 :</p><p>
107、圖6-17添加學(xué)生/編輯學(xué)生 信息界面</p><p> 3.管理員管理課程信息 </p><p> 功能介紹:管理員管理課程信息。由于課程信息是由教師發(fā)布所以管理員無權(quán)修改課程信息有權(quán)利刪除課程信息。本頁面顯示了課程名稱、上課時(shí)間、上課地點(diǎn)等信息用于方便管理員查看和刪除課程。如圖6-18 所示:</p><p> 圖6-18 管理員管理課程信息</p&
108、gt;<p> 7 設(shè)計(jì)過程中的問題及解決</p><p> 7.1 數(shù)據(jù)庫的連接</p><p> 每一種數(shù)據(jù)庫的連接方式驅(qū)動(dòng)和地址端口號(hào)都有有所不同,首要的一點(diǎn)就是認(rèn)真細(xì)心引入驅(qū)動(dòng)配置鏈接地址,通過查找及實(shí)踐,完成了數(shù)據(jù)庫的建立和連接。</p><p><b> 7.2 參數(shù)的傳遞</b></p><
109、;p> 在模塊的建立時(shí),很多時(shí)候發(fā)現(xiàn)功能不能正常運(yùn)行,在檢查完程序語句的結(jié)構(gòu)之后,發(fā)現(xiàn)并沒有錯(cuò)誤,于是在檢查頁面與頁面交互時(shí)發(fā)現(xiàn)了問題,很多地方傳遞的參數(shù)并沒有真正的執(zhí)行,還有些地方?jīng)]有進(jìn)行參數(shù)的設(shè)置,才導(dǎo)致了程序的錯(cuò)誤。</p><p><b> 7.3 公共數(shù)據(jù)</b></p><p> 由于一開始沒有使用session對(duì)象,致使很多功能無法實(shí)現(xiàn),在學(xué)
110、習(xí)了session的相關(guān)內(nèi)容后才解決了一些具體的問題,包括網(wǎng)頁間的參數(shù)的傳遞,公共信息的保存及提取等。</p><p><b> 8 總結(jié)</b></p><p> 通過最后兩個(gè)多月的畢業(yè)設(shè)計(jì),我對(duì)WEB服務(wù)器、數(shù)據(jù)庫軟件MySQL5.0、JAVA、JSP、Tomcat 5.5、Struts框架、Hibernate框架等系列知識(shí)都有了一定的了解。</p>
111、;<p> 由于在此之前對(duì)于JAVA 、Jsp、框架、MySQL5.0和Tomcat知識(shí)的了解幾乎是一片空白,所以從一開始就碰到許多困難。例如一開始我使用的是Access2000數(shù)據(jù)庫服務(wù)器,由于性能上與我使用的操作系統(tǒng)Windows XP有很多地方不相容,使得我在很長一段時(shí)間內(nèi)找不到問題的癥結(jié),導(dǎo)致了大量時(shí)間在檢查代碼甚至是對(duì)硬件的檢查中,后來在看了有關(guān)Jsp、JAVA編程方面的資料后更換了數(shù)據(jù)庫服務(wù)器才將問題解決,另
112、外在進(jìn)行對(duì)循環(huán)顯示以及網(wǎng)頁中腳本代碼與html代碼之間的關(guān)系上都有過很大的困難,通過在網(wǎng)上尋找有關(guān)資料以及同學(xué)的幫助下最后都得到了解決。</p><p> 在整個(gè)設(shè)計(jì)階段感受最為深刻的是掌握學(xué)習(xí)的方式和解決問題的方法。首先是解決問題的方式,雖然面臨的信息很多,但是如何從大量的信息中篩選出所需的信息,有用的信息,才是解決問題的關(guān)鍵,另外一個(gè)就是解決問題的方法,就像我在解決設(shè)計(jì)中的很多問題一樣,一開始總是在看書,和
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)----網(wǎng)上選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 大學(xué)選課系統(tǒng)的分析、設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
- 網(wǎng)上選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)基于web的選課系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 基于java的學(xué)生選課系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)(論文)+網(wǎng)上選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---基于bs模式選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于ajax的學(xué)生選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)--在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 在線書店系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 在線選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要
- 在線購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 教務(wù)畢業(yè)設(shè)計(jì)選題與選課系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---在線房屋租賃系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 花卉在線銷售系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)(論文)在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 在線點(diǎn)餐系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論