




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1選題背景數(shù)據(jù)庫是從60年代初發(fā)展起來的計算機(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ù)提出了更多、更高的要求。同時,隨著國內(nèi)高校校園網(wǎng)的建設(shè),基于互聯(lián)網(wǎng)的應(yīng)用系統(tǒng)的開發(fā)正在蓬勃發(fā)展并發(fā)揮著較大的作用。例如,我國許多高校的網(wǎng)上招生系統(tǒng),學(xué)校的各種管理信息系統(tǒng),還有一些醫(yī)學(xué)院校開發(fā)出的網(wǎng)上診所、遠(yuǎn)程診斷系統(tǒng)等等,都是基于校園網(wǎng)的應(yīng)用系統(tǒng)。國外的教學(xué)科研軟件與國內(nèi)相比開發(fā)的早而且比較成熟。早在七十年代末,美國就建成了NSFN
2、ET(國家科學(xué)基金網(wǎng)),其課題的申報及課題的進(jìn)展情況匯報都在網(wǎng)上進(jìn)行。其網(wǎng)上教學(xué)教務(wù)管理系統(tǒng)也十分完善,世界各地的學(xué)生可以坐在家里通過互聯(lián)網(wǎng)完成入學(xué)報名、考試、畢業(yè)論文及取得學(xué)位這一學(xué)習(xí)生活的全過程。目前,國際上已具規(guī)模的遠(yuǎn)程教育學(xué)校就有數(shù)百所之多,網(wǎng)上教育正在各地發(fā)揮著巨大的作用,為世界各國培養(yǎng)出大批人才。所有這些都表明,基于Internet的校園網(wǎng)的應(yīng)用已深入到校園內(nèi)的各個方面。學(xué)校是國家培養(yǎng)人材的搖籃,在科技興國戰(zhàn)略的指導(dǎo)下,實(shí)現(xiàn)教育的現(xiàn)代化、科技化是必然趨勢,而要實(shí)現(xiàn)這一點(diǎn),首先要實(shí)現(xiàn)教育管理方法和管理手段的現(xiàn)代化和科技化。計算機(jī)的應(yīng)用已深入到社會生活的方方面面,在計算機(jī)界的專業(yè)人士大
3、力致力于軟件開發(fā)的時候,大多數(shù)人卻忽略了開發(fā)適于教育管理軟件的重要性,現(xiàn)在國內(nèi)的有些學(xué)校,還處于手工的“face to face”的管理階段,即使配備了計算機(jī),也僅僅用來打字、制表、上網(wǎng)查資料,僅此而已,使計算機(jī)更多的功效未被開發(fā)出來。利用現(xiàn)有的校園網(wǎng),使用己經(jīng)成熟的Web數(shù)據(jù)庫技術(shù),實(shí)現(xiàn)選課系統(tǒng)是一件比較容易而緊迫的工作。課題旨在使目前校園內(nèi)教學(xué)、教務(wù)管理信息網(wǎng)絡(luò)化,解決已往信息傳遞不方便、不快捷等問題,學(xué)生可以直接通過網(wǎng)絡(luò)選擇專業(yè)。本系統(tǒng)使學(xué)生信息網(wǎng)絡(luò)化,可以直接在網(wǎng)絡(luò)對學(xué)生信息進(jìn)行管理,修改,查找等。應(yīng)用本系統(tǒng)以后,使學(xué)生可以根據(jù)自己的意愿進(jìn)行自由的選課,教師可以及時的了解自己所教課程的
4、選課情況,學(xué)校也可以根據(jù)學(xué)生的選課情況,及時了解教師在學(xué)生中的認(rèn)知程度,有效地促進(jìn)了教學(xué)質(zhì)量的提高。2方案論證2.1系統(tǒng)可行性要求今天,計算機(jī)已經(jīng)成為我們學(xué)習(xí)和工作的得力助手計算機(jī)的價格已經(jīng)十分低廉,性能卻有了長足的進(jìn)步。它已經(jīng)被應(yīng)用于許多領(lǐng)域,計算機(jī)之所以如此流行的原因主要有以下幾個方面。首先,計算機(jī)可以代替人工進(jìn)行許多繁雜的勞動;其次,計算機(jī)可以節(jié)省許多資源;再次,計算機(jī)可以大大的提高人們的工作效率;最后,計算機(jī)可以使敏感文檔更加安全,等等。2.1.1 系統(tǒng)性能的分析系統(tǒng)需要較好的響應(yīng)時間,各方面要考慮周到,尤其是選課處理模塊。應(yīng)該能盡量的滿足用戶需求,能夠預(yù)防各種突發(fā)事件的發(fā)生,比如非法
5、登錄、排課沖突,選課沖突的等等。2.1.2 硬件可行性分析操作基于WIN98以上的WIN 2000 Professional/WIN XP Professional/WIN ME等操作系統(tǒng)均可。(需要安裝ASP 和數(shù)據(jù)庫等相關(guān)服務(wù)程序,硬CPU至少奔566以上,內(nèi)存64M以上)。CRT至少需要256顏色,分辨率在640X480以上。 SQL Server 2000可以在多種操作系統(tǒng)上運(yùn)行,服務(wù)器環(huán)境可以是 Windows NT、Windows 2000 Server或者Windows9x,客戶機(jī)環(huán)境可以是 Windows NT、Windows 2000 Server、Windows 9x,第三
6、方平臺和Internet 瀏覽器。用輔助工具SQL Server來對數(shù)據(jù)庫進(jìn)行必要的維護(hù),由于數(shù)據(jù)量在以后的應(yīng)用中會大幅度增加,所以使用SQL Server來滿足系統(tǒng)需求。2.1.3經(jīng)濟(jì)可行性分析主要是對項目的成本進(jìn)行評估,開發(fā)一個高質(zhì)量的網(wǎng)站,需要投入大量的人力和物力,所以要對建立和運(yùn)行這樣的一個系統(tǒng)所需成本做到心中有數(shù)。其成本主要集中在以下幾個方面:(1)硬件成本:建立系統(tǒng)所需購置的基本和相關(guān)設(shè)備;(2)軟件成本:開發(fā)系統(tǒng)所需的軟件;(3)數(shù)據(jù)成本:建立系統(tǒng)正常運(yùn)行的先期數(shù)據(jù)投入的資金;(4)運(yùn)行成本:制作、調(diào)試、維護(hù)系統(tǒng)運(yùn)行時的開銷。如:硬軟件的維修,人員培訓(xùn),數(shù)據(jù)庫的備份與更
7、新,設(shè)備的日常耗材等。它是長期使用所要考慮的重點(diǎn)問題。開發(fā)任何一個基于計算機(jī)的系統(tǒng)軟件,都會受到時間和資源上的限制。因此,在接受項目時必須對用戶提供的時間和資源條件進(jìn)行可行性研究。它可以避免人力、物力和財力的浪費(fèi)。由于開發(fā)的主要背景為畢業(yè)設(shè)計在經(jīng)濟(jì)上不注重直接的經(jīng)濟(jì)收益,而是注重小組成員整體水平的提高。所以在經(jīng)濟(jì)可行性上能夠?qū)嵤┐隧椖俊?.1.4技術(shù)可行性分析在硬件和軟件方面都能夠滿足開發(fā)需求,在開發(fā)過程中如有不懂之處,可以很方便的查找各類書籍,請教老師和同學(xué)來幫助,開發(fā)人員都有一定的編程基礎(chǔ),以前也都類似的實(shí)習(xí)過,所以都滿懷信心。因此,利用現(xiàn)有人力和物力是完全具備的能力開發(fā)出來的,所以開發(fā)此
8、系統(tǒng)在技術(shù)上是完全可行的。本程序采用ASP技術(shù)進(jìn)行設(shè)計。Active Server Pages:“動態(tài)服務(wù)器網(wǎng)頁”,一般簡稱為“ASP”,ASP之所以能受到大家的重視與使用的原因,主要在于所產(chǎn)生的執(zhí)行結(jié)果都是標(biāo)準(zhǔn)的HTML格式,而且這些程序是在網(wǎng)絡(luò)服務(wù)端中執(zhí)行,使用一般的瀏覽器(如IE 或Netscape)都可以正確地獲得ASP的“執(zhí)行”結(jié)果,并且將這ASP執(zhí)行的結(jié)果直接在瀏覽器中“瀏覽”。SQL Server 2000 是微軟公司最新版的大型數(shù)據(jù)庫服務(wù)器,其性能指標(biāo)在各方面都有趕超Oracle 數(shù)據(jù)庫的趨勢。SQL Server 2000 也是關(guān)系型數(shù)據(jù)庫系統(tǒng),是基于客戶機(jī)/服務(wù)器(Clie
9、nt/Server,簡稱C/S 結(jié)構(gòu))的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(Relational DataBase Management System,簡稱RDBMS)。Dreamweaver是美國MACROMEDIA公司開發(fā)的集網(wǎng)頁制作和管理網(wǎng)站于一身的網(wǎng)頁編輯器,它是第一套針對專業(yè)網(wǎng)頁設(shè)計師特別發(fā)展的可視化網(wǎng)頁開發(fā)工具,利用它可以輕而易舉地制作出跨越平臺限制的網(wǎng)頁。2.1.5 社會因素可行性分析市場上雖然有很多的類似開發(fā)軟件,但本次開發(fā)的軟件具有其獨(dú)到之處,自身有很強(qiáng)的優(yōu)勢,有一定的市場需求性。同時作為畢業(yè)設(shè)計來說,整體的開發(fā)環(huán)境十分友好,所以在社會因素上具有開發(fā)的可行性。2.2需求分析2.2.1用戶需
10、求隨著高校教育改革的不斷深入,學(xué)分制的全面推行,教育教學(xué)管理模式在不斷發(fā)生變化,教學(xué)計劃需不斷地進(jìn)行修訂,學(xué)生選課、排課的任務(wù)極其煩瑣、復(fù)雜,應(yīng)用計算機(jī)進(jìn)行選課管理勢在必行。對于管理員,要求可以進(jìn)行添加課程的詳細(xì)內(nèi)容,查看教師的反饋意見,然后進(jìn)行課程的設(shè)置,可以查詢學(xué)生的選課情況和教師的課程安排。對于教師,可以查詢學(xué)校的課程安排,然后根據(jù)各方面情況,發(fā)表反饋意見,查詢自己所教課程的學(xué)生選課情況。對于學(xué)生,可以根據(jù)學(xué)校的課程安排和實(shí)際情況,進(jìn)行選課。然后查詢自己的課程表。2.2.2具體需求鑒于此,我們開發(fā)設(shè)計了高校選課系統(tǒng)。該系統(tǒng)包括:教學(xué)計劃安排管理、選課、教室管理、教師情況管理、輔助排課、數(shù)
11、據(jù)備份等子模塊。經(jīng)過對實(shí)際應(yīng)用的認(rèn)真分析,確定本模塊需要實(shí)現(xiàn)如下功能:(1)權(quán)限管理:包括密碼設(shè)置、增加用戶、刪除用戶、用戶管理。(2)排課子系統(tǒng):為某課程填加排課、刪除排課、備份排課結(jié)果、導(dǎo)入備份的排課結(jié)果、刪除備份的排課結(jié)果、院系課程設(shè)置、教室安排(3)選課子系統(tǒng):查詢排客結(jié)果、撰寫選課通知、撰寫反饋信息、查詢選課備選擇課程、顯示查詢結(jié)果、退課。對復(fù)雜的數(shù)據(jù)及數(shù)據(jù)之間復(fù)雜關(guān)系的分析和建模將成為需求分析的重要任務(wù)。很顯然,這項任務(wù)是簡單的數(shù)據(jù)字典機(jī)制無法勝任的。所以,有必要在數(shù)據(jù)流分析方法中引進(jìn)適合于復(fù)雜數(shù)據(jù)建模的工具:實(shí)體-關(guān)系圖。所屬院系編號專業(yè)號姓名學(xué)號學(xué) 生 m選課 n課 程最大選課
12、人數(shù)考察方式開課院系學(xué)分課程名課程號圖2.1 學(xué)生選課子系統(tǒng)E-R圖2.2.3 軟件需求分析軟件需求分析是指用戶對目標(biāo)軟件在功能、行為、性能設(shè)計約束等方面的期望。通過對應(yīng)用問題及環(huán)境的理解與分析,為問題涉及的消息、功能、系統(tǒng)行為建立模型,將用戶需求精確化、完全化,最終形成需求規(guī)格說明書。2.3 概要設(shè)計2.3.1系統(tǒng)目標(biāo) 做這個軟件主要是要為了減輕學(xué)校教務(wù)處工作的負(fù)擔(dān),讓學(xué)校的資源能得到充分的利用,充分體現(xiàn)學(xué)校的現(xiàn)代化教學(xué)方針。并且是要能排出一個基本可以符合人性化的教學(xué)課表,讓大家進(jìn)行選擇,合理安排所有的課程。使學(xué)生能夠充分的自主選擇所喜愛的教師,也能夠從中審查每個教師在學(xué)生心中的認(rèn)知程度。學(xué)
13、校也能從中更多的了解教師與學(xué)生的各方面情況。2.3.2總體設(shè)計在使用UML進(jìn)行建模時,有很大的靈活性,在對它操作時,可以針對不同規(guī)模的軟件進(jìn)行不同程度的建模。以下從幾個方面簡要地介紹說明使用UML進(jìn)行建模的一般步驟。對一個大型的復(fù)雜的軟件項目來說,首先要進(jìn)行領(lǐng)域建模。這是指與客戶或客戶所在領(lǐng)域的專家進(jìn)行交流,最大可能地熟悉客戶的業(yè)務(wù)邏輯。以便發(fā)展在后繼的建模過程中所要建立的功能,明確在后繼建模過程使用的描述性語言的詞匯所表達(dá)的意義的準(zhǔn)確性和一致性。接下來是進(jìn)行用例建模,一般來說,用戶并不完全清楚系統(tǒng)應(yīng)該提供一些什么樣的功能。而對軟件開發(fā)商來講,則必須精確描述所有的功能。這是除了進(jìn)行領(lǐng)域建模外,
14、還可以采用謂詞分析方法來找出用例。接下來則是建立類圖。建立類圖的主要任務(wù)或目的就是進(jìn)一步明確所有要用的到的類,將前面階段分析出來的所有的函數(shù)和變量明確劃分到一個具體的類,并且明確各個類之間的關(guān)系(如包含或繼承)。理論上,這一階段的結(jié)果應(yīng)該能夠直接對應(yīng)到代碼,因為面向?qū)ο蟮能浖?yīng)該是類和類的對象組成的。類圖是建模最終的結(jié)果。但是這其中還要用到其他的圖。最常用到的還有活動圖?;顒訄D類似于傳統(tǒng)的面向?qū)ο筮^程軟件設(shè)計中的流程圖,它通常具體說明某個功能模塊的具體實(shí)現(xiàn)步驟。在一個大型的軟件中常常有一些關(guān)鍵的算法和一些關(guān)鍵的、邏輯復(fù)雜的函數(shù),這時就需要活動圖 。A. 登錄模塊:在進(jìn)行登錄時,這里使用策略是:
15、管理員的初始用戶名和初始密碼都是“Admin”,把它存儲到UserInfo表,且UserInfo表只有這一條記錄。教師和學(xué)生的初始用戶名和初始密碼都分別是其教師號,和學(xué)號。這些信息在剛剛開始的時候并沒有存儲到UserInfo表,而是通過判斷用戶的類型,直接從TeacherInfo表或StudentInfo表讀取。當(dāng)讀取并核實(shí)以后,將它保存到UserInfo表,且分別存儲為初始用戶名和初始密碼(以后用戶就可以在UserInfo表中修改自己的登了錄信息了)。如果用戶不是第一次登錄,則在UserInfo表中應(yīng)已有其信息,這時直接讀取UserInfo表進(jìn)行判斷。B. 排課模塊:首先羅列出各個學(xué)院,然后
16、各個學(xué)院所開設(shè)的課程進(jìn)行課程的設(shè)置,課程設(shè)置包括:課程編號、面向?qū)I(yè)編號、學(xué)分、限選性質(zhì)、教師編號、考察方式、備注、最大選課人數(shù)、課程編號、開課院系編號、面向年級。其次,所開設(shè)的課程和教師的反饋信息,進(jìn)行排課,可以選擇的有上課時間和上課地點(diǎn)。C. 選課模塊:學(xué)生用自己的帳號秘密登錄以后就可以進(jìn)行選課了。學(xué)生根據(jù)自己所在的校區(qū)和學(xué)院、年級,進(jìn)入備選的課程選項。首先學(xué)生根據(jù)自己的意愿對必修的課程選擇自己認(rèn)為最理想的教師。然后再進(jìn)行選修課程的選擇,學(xué)生根據(jù)每種選修課程的學(xué)分,綜合自己的各方面因素,進(jìn)行選課。同一個人不能同時選兩個相同的課程。每個課程都有一個最大選課人數(shù),當(dāng)選擇該課程的人數(shù)達(dá)到最大人數(shù)
17、的時候,將不允許其他人再選擇該課程。首 頁登 錄 窗 口學(xué) 生管理員教 師課表查詢選課教室安排課程查詢選課查詢教師反饋課程設(shè)置排課選課 退課 設(shè)定上課時間地點(diǎn)設(shè)定選課時間發(fā)布選課信息圖2.2 總體結(jié)構(gòu)圖本節(jié)首先簡要介紹了UML進(jìn)行軟件建模的一般步驟,然后按這樣的步驟建立可WebCoursettlement系統(tǒng)的簡單模型。這里將WebCoursettlement定位為小型的系統(tǒng),因此建模的構(gòu)成比較簡略。在以后的具體實(shí)施中可以看到,在具體編碼實(shí)現(xiàn)時還有一些具體的問題,包括有ASP本身的語言特性產(chǎn)生的問題,這里的建模只是對系統(tǒng)實(shí)施的一個知道。如前所述,UML建模過程是一個不斷循環(huán)深入的過程,而市場競
18、爭使得快速地將產(chǎn)品推向市場成為一個基本要求,所以在軟件項目當(dāng)中要進(jìn)行各方面的權(quán)衡,不能使其癱瘓在建模階段。這里最終沒有建立起一個非常完美的模型,還有很多要在實(shí)施過程中去完善的地方,但是這個模型已經(jīng)能夠指導(dǎo)進(jìn)行以后的工作了。3 過程論述3.1詳細(xì)設(shè)計3.1.1模塊設(shè)計如前所述,光有用例圖是不夠的,應(yīng)該有一個用標(biāo)準(zhǔn)的語言描述的用例文檔?,F(xiàn)在把這個文檔羅列出來。詳細(xì)分析每一個小部分所參與的對象,和這部分所應(yīng)該具有的所有功能,以便后面生成實(shí)現(xiàn)代碼所用。A. 排課程子系統(tǒng)查詢教室使用情況, 參與者為管理員。具體功能描述為,在排課過程當(dāng)中,排課者可以查詢教室的使用情況。系統(tǒng)顯示教學(xué)樓列表,排課者可以展開查
19、看具體教室的使用情況。具體教室的使用情況為:每間教室的屬性(如多媒體教室、計算機(jī)房、大、中和小班教室等);教室的使用情況,即從星期一到星期日的已占用情況(以一節(jié)課為單位)。查詢院系課程設(shè)置,參與者為管理員。具體功能描述為,在排課過程當(dāng)中,排課者可以查詢院系課程設(shè)置。系統(tǒng)顯示院系列表。排課者可以展開查看具體院系的課程開設(shè)情況。具體院系的課程開設(shè)情況為:課程代號,課程名稱,任課教師代號,教師名稱和總課時等。排課,參與者為管理員。具體功能描述為,排課者按年級排課。排課表內(nèi)容包括課程代號,課程名稱,授課院系,專業(yè)代號,專業(yè)名稱,教師代號,考察方式,學(xué)分,開課時間,上課時間,地點(diǎn),開課院系,最多上課人數(shù)
20、,課程選擇限制(必修、限選或任選)等。在排課過程當(dāng)中,排課者可以查詢教室使用情況和查詢院系課程設(shè)置。通過查詢院系課程設(shè)置欄,排課者可以拖曳課程到正在排的排課表。通過查詢教室使用情況欄排課者可以拖曳教室到正在排的課表。在排課者提交排課表以后系統(tǒng)應(yīng)當(dāng)確保該排課方案中沒有教師時間沖突和教室沖突。如果有沖突,系統(tǒng)應(yīng)該提示排課者具體沖突的產(chǎn)生原因。發(fā)布排課結(jié)果,參與者為管理員。具體功能描述為,系統(tǒng)保存通過發(fā)布的排課表。排課完成以后,通過發(fā)布的排課結(jié)果對所有教師可見,可以接受查詢,同時通過發(fā)布的排課結(jié)果對選課系統(tǒng)可見。修改排課結(jié)果,參與者為管理員。具體功能描述為,排課者可以修改發(fā)布或者沒有發(fā)布的排課結(jié)果。
21、查詢排課信息,參與者為管理員、教師和學(xué)生。具體功能描述為,排課者、教師和學(xué)生可以查詢發(fā)布的排課信息。備份排課結(jié)果,參與者為管理員。具體功能描述為,排課者可以備份(中間)排課結(jié)果。查詢歷史排課結(jié)果,參與者為管理員。具體功能描述為,排課者可以查詢歷史(往年)排課結(jié)果。導(dǎo)入排課結(jié)果,參與者為管理員。具體功能描述為,排課者可以導(dǎo)入備份的排課結(jié)果和歷史排課結(jié)果(再在其上作修改,以減少工作量)。在導(dǎo)入歷史排課結(jié)果的時候因為可能的教師、教室、課程的變動導(dǎo)致沖突,系統(tǒng)應(yīng)該能夠查出所有的變動并提示排課者:共XX處沖突,每一處沖突都用不同的顏色標(biāo)出并標(biāo)明產(chǎn)生的原因。發(fā)布有關(guān)排課消息,參與者為管理員。具體功能描述為
22、,排課者可以發(fā)布關(guān)于排課的消息以提示教師關(guān)于排課的各種信息。查看反饋,參與者為管理員和教師。具體功能描述為,排課者可以查看教師的反饋,以調(diào)整排課;教師可以查看反饋?zhàn)鳛閷ε耪n提出意見的參考。排課者或教師首先瀏覽反饋意見的列表,然后查看具體的某條反饋意見。這和留言板的功能是一樣的。查詢教師課表,參與者為管理員和教師。具體功能描述為,排課者、教師可以查詢教師課表。查詢教師課表,參與者為教師。具體功能描述為,教師可以對排課結(jié)果提出反饋意見。發(fā)布關(guān)于選課消息,參與者為管理員。具體功能描述為,排課完成以后排課者可以在選課系統(tǒng)發(fā)布關(guān)于選課的各種消息。B. 選課系統(tǒng)設(shè)定選課時間段,參與者為學(xué)生。具體功能描述為
23、,排課者應(yīng)設(shè)定選課時間段。學(xué)生只能在此設(shè)定的時間段內(nèi)才能選課。選課,參與者為學(xué)生。具體功能描述為,學(xué)生可以在規(guī)定的時間段內(nèi)選課。該規(guī)定時間段由排課者通過發(fā)布消息通知教師和學(xué)生。選課過程如下:學(xué)生在選課表上單擊“選課”,則該信息被提交到服務(wù)器,服務(wù)器返回該學(xué)生選課列表為彈出式窗口,該窗口顯示該學(xué)生的學(xué)生課表。選課表的內(nèi)容包括排課表的全部內(nèi)容,另外每一位老師所教的每一門課程還包括已選人數(shù),還能選的人數(shù)。如果已經(jīng)選滿則不能再選擇這門課程。如果有學(xué)生退課,則該門課程的已選人數(shù)減1,還能選的人數(shù)加1。退課,參與者為學(xué)生。具體功能描述為,即學(xué)生可以在規(guī)定的時間段內(nèi)刪除某門已選的課程。該信息被提交到服務(wù)器,
24、服務(wù)器返回該刪除該選課后學(xué)生選課列表為彈出式窗口,該窗口顯示該學(xué)生退課后的學(xué)生課表。查詢課程詳細(xì)情況,參與者為學(xué)生。具體功能描述為,學(xué)生可以查詢某門課程的詳細(xì)情況如課程簡介,教材,課時,學(xué)分,考察方式,相關(guān)課程等內(nèi)容。查詢學(xué)生課表,參與者為學(xué)生和管理員。具體功能描述為,學(xué)生隨時能查看自己的選課表;排課者可以用學(xué)號查詢?nèi)魏螌W(xué)生的課表。查詢可以以模糊查詢的方式進(jìn)行,即不必輸入完全的學(xué)生學(xué)號。多于一個的結(jié)果以列表的方式列出,點(diǎn)擊其中一個查看詳細(xì)內(nèi)容。學(xué)生課表內(nèi)容包括學(xué)生學(xué)號、學(xué)生姓名、學(xué)生性別、學(xué)生年級、學(xué)生班級;課程代號、課程名稱、授課院系、專業(yè)代號、專業(yè)名稱、教師代號、考察方式、學(xué)分、開課時間、
25、上課時間、地點(diǎn)、開課院系等。按課程代號查詢選課名單,參與者為學(xué)生、教師和管理員。具體功能描述為,學(xué)生、教師和排課者可以按課程代號查詢選課名單。由于有多位教師教同一門課程的情況,查詢結(jié)果用列表的形式給出,點(diǎn)擊可以查看某一位老師所教課程的具體選課名單。按教師代號查詢選課名單,參與者為學(xué)生、教師和管理員。具體功能描述為,學(xué)生、教師和排課者可以按教師代號查詢選課名單。由于有一位教師教多門課程的情況,查詢結(jié)果用列表的形式給出,點(diǎn)擊可以查看這位老師所教某一門課程的具體選課名。3.1.2 數(shù)據(jù)庫設(shè)計數(shù)據(jù)的設(shè)計是本設(shè)計設(shè)計的核心,一個好的網(wǎng)上選課系統(tǒng)是對教學(xué)系統(tǒng)的數(shù)據(jù)進(jìn)行有條不紊的管理。由于本系統(tǒng)用的是跨平臺
26、式交互方式,所以在數(shù)據(jù)庫的選擇方面我選擇的是比較流行SQL Server2000數(shù)據(jù)庫來實(shí)現(xiàn)我們設(shè)計的功能。在數(shù)據(jù)表的設(shè)計上建立表的聯(lián)系,使表的設(shè)計簡明,數(shù)據(jù)清晰。表2.1 排課表字 段說 明類型(長度)備 注ARRANGE_ID排課編號int主鍵,標(biāo)識CLASSROOM_ID上課教師號int外鍵DAY_TIME上課時間varchar(20)SETTING_ID課程設(shè)置號datetime外鍵字 段說 明類型(長度)備 注COURSE_ID課程編號chat(20)主 鍵COURSE_NAME課程名稱nchar(20)NITRODUCTION課程介紹nvarchar(300)表2.2 課程詳細(xì)信息
27、表表2.3 選課信息表字 段說 明類型(長度)備 注ARRANGE_ID排課編號intSTUDENT_ID學(xué)生學(xué)號varchar(20)表2.4用戶信息表字 段說 明類型(長度)備 注USER_TYPE用戶類型char(1)USER_ID用戶編號、標(biāo)識intUSER_NAME用戶名Varchar(20)PASSWORD用戶密碼Varchar(20)表2.4 開課信息表字 段說 明類型(長度)備 注SETTING_ID課程設(shè)置編號int主鍵,標(biāo)識ORIENT_DEPT_ID面向?qū)I(yè)varchar(20)SCORE學(xué)分tinyintSELECT_LIMIT限選性質(zhì)nchar(4)TEACHER_I
28、D教師編號varchar(20)TEST_METHOD考察方式nchar(4)COMMENT備注varchar(200)默認(rèn)值“無”SELECTCR_NO_LIMIT最大選課人數(shù)smallintCOUTSE_ID課程編號char(20)DEPT_ID開課院系編號char(10)GRADE_ID面向年級tinyint3.2系統(tǒng)實(shí)現(xiàn)3.2.1運(yùn)用ASP技巧編程Active Server Pages:“動態(tài)服務(wù)器網(wǎng)頁”,一般簡稱為“ASP”,ASP之所以能受到大家的重視與使用的原因,主要在于所產(chǎn)生的執(zhí)行結(jié)果都是標(biāo)準(zhǔn)的HTML格式,而且這些程序是在網(wǎng)絡(luò)服務(wù)端中執(zhí)行,使用一般的瀏覽器(如IE 或Nets
29、cape)都可以正確地獲得ASP的“執(zhí)行”結(jié)果,并且將這ASP執(zhí)行的結(jié)果直接在瀏覽器中“瀏覽”,不像VBScript或 JavaScript是在客戶端(Client)的瀏覽器上執(zhí)行,若使用VBScript來設(shè)計程序,客戶端(lient)在瀏覽器中可以顯示程序執(zhí)行的結(jié)果,可是,客戶端(lient)若使用Netscape瀏覽器就無法顯示VBScript的執(zhí)行結(jié)果。RequestResponseServerSessionApplicationObjectContext 從客戶端取得信息將信息送給客戶端提供一些Web服務(wù)器工具儲存在一個Session內(nèi)的用戶信息,該信息僅可被該用戶訪問在一個ASP-A
30、pplication中讓不同的客戶端共享信息可以用來配合Microsoft Transaction 服務(wù)器進(jìn)行分布式事務(wù)處理。在運(yùn)行ASP數(shù)據(jù)庫時先要對Interner服務(wù)器管理程序進(jìn)行相關(guān)設(shè)置首先打開我的電腦,點(diǎn)擊控制面版,找到管理工具里的Internet服務(wù)程序,然后打開它對里面的相關(guān)設(shè)置。在默認(rèn)Web站點(diǎn)的屬性里首先更改主目錄里的主頁文件所在路徑。路徑正確后接下來在默認(rèn)Web站點(diǎn)屬性里找到文檔目錄,然后在里面添加所建主頁的名字。這里面我們添加的文件名為index.asp,然后單擊確定完成設(shè)置。A. ASP代碼的對象化提起ASP很多人就認(rèn)為是一堆HTML腳本和被括在<%和%>之
31、中的一些代碼還有就是一些JAVASCRIPT腳本等籌在一起的一些代碼的集合,這樣的代碼,再加上各類的不同格式的注釋,看起來就一個字:亂。也不管別人能不能看得懂,只要是能實(shí)現(xiàn)自己的目的就可以了。 因為ASP的代碼也是腳本,給了客戶也不可能不被人看到其中的內(nèi)容,頂多包容在DLL中一部分業(yè)務(wù)邏輯,但是還是覺得ASP代碼是最不值錢的代碼,沒有人回去購買,可以隨時從別人的網(wǎng)站中查看源碼的形式得到別人辛辛苦苦編寫出來的獨(dú)特風(fēng)格的東西。這些原因使ASP的發(fā)展成為了一種編的快忘的也快的代碼,可讀性,維護(hù)性也是各種語言中最為差的代碼。 其實(shí),ASP代碼
32、也可以像其他語言一樣的面向?qū)ο?,模塊化,將很多頁面集成封裝到一個類中,運(yùn)用類中的不同方法來顯示不同的頁面,這樣你可以將同一業(yè)務(wù)邏輯下的頁面和邏輯封裝到一個類里,用不同的方法來實(shí)現(xiàn)。說了這么多,可能大家的思路都亂了,趕快給大家一點(diǎn)范例來看看:<%'*'* 類名:clsWebWorkFlowLog '* 功能:工作流日志跟蹤類'* History: '* 作成:doface
33、'* 日期:2003/10/24 Ver 1.0 '* 改動: '* 日期:'*class clsWebWorkFlowLog '定義公開屬性存放Connection對象 public ActiveConnection private oResponse '= '=
34、 過程名:main '= 參 數(shù): '= 功能:主調(diào)函數(shù) '= 根據(jù)不同動作參數(shù)執(zhí)行不同的操作 '= 返回值: '= sub main() select case Request("act")B. 不刷新頁面篩選數(shù)據(jù)庫中的數(shù)據(jù)在作asp程序時經(jīng)常遇到這種情況,將數(shù)據(jù)庫中的數(shù)據(jù)(如所有雇員名)列在列表框中,程序要求進(jìn)行選擇其中一項或多項提交到下一個頁面。但麻煩的是如果數(shù)據(jù)(如雇員)過多,會給客戶的選擇帶來麻煩要從很長的列表中進(jìn)行數(shù)
35、據(jù)定位。最好的解決方法是用戶在選擇前采用模糊查詢的方式進(jìn)行數(shù)據(jù)定位,準(zhǔn)確找出需要選擇的雇員名,再選擇、提交。問題出現(xiàn)在我們程序員面前:如何不刷新頁面從數(shù)據(jù)庫中篩選數(shù)據(jù)。本人的方法有兩種:(1)采用雙列表框的方法(2)采用XML方法本文主要介紹第一種方法:采用雙列表框的方法編程思想,采用雙列表框,其中一個為隱藏狀態(tài),另一個是顯示給用戶看的列表框。程序開始將數(shù)據(jù)(如雇員姓名)分別裝進(jìn)兩個列表框中,當(dāng)用戶需要篩選雇員時首先將顯示列表框清空,再根據(jù)篩選條件將數(shù)據(jù)從隱藏列表框裝入顯示列表框中。這樣即可實(shí)現(xiàn)不刷新頁面篩選數(shù)據(jù)庫中的內(nèi)容。C. 加速ASP程序的顯示速度作為一個ASP程序員,你不會懷疑提高We
36、b應(yīng)用程序性能的重要性。為了讓程序運(yùn)行的更快一些,你可能一直忙于優(yōu)化數(shù)據(jù)庫或COM組件。如果這些你都做過了,你想到過靠加快最終生成HTML代碼在瀏覽器中的顯示速度來提高性能嗎?對于最終用戶來說,如果頁面能顯示的更快,你就能贏得更多的贊譽(yù)。提高HTML在瀏覽器中顯示的速度可以通過一些鮮為人知的技術(shù)來實(shí)現(xiàn)。 a. 使用表格嵌套在頁面中建立復(fù)雜的結(jié)構(gòu),一般通過在頁面中放置HTML表格來實(shí)現(xiàn)。如果要建立一個這樣的頁面:這個頁面有一個頂部導(dǎo)航欄一個左邊導(dǎo)航欄,一個右邊的內(nèi)容區(qū)。可以用一個兩行兩列的大表格來建立它。第一行中,合并兩個列,然后插入一個頂部導(dǎo)航欄。第二行左邊的列中,插入一個表格來顯示導(dǎo)航按鈕。
37、右邊的欄中,放置一個表格來實(shí)際內(nèi)容。但是,實(shí)際上,瀏覽器找到TABLE標(biāo)簽的時候并不是立刻把頁面顯示到屏幕上,除非它找到相應(yīng)的結(jié)束標(biāo)簽/TABLE。所以,如果你的整個頁面在一個表格里的話,在收到最后一個/TABLE之前,什么也不會顯示出來,這樣,這個頁面將在整個文件全部下載以后才能被用戶所看到。在頁面數(shù)據(jù)量比較大的時候(比如搜索引擎的搜索結(jié)果),這個特性會導(dǎo)致暫時的停頓。為了防止出現(xiàn)這種情況,可以在制作的時候把頁面分成許多小的表格。在每一個TABLE到相應(yīng)的/TABLE這一部分HTML代碼下載完的時候,瀏覽器就會把它顯示出來。在訪問者看來頁面是漸漸的,一部分一部分,越來越多的出現(xiàn)在屏幕上的。感
38、覺上,這樣的頁面顯示速度比下載完整個文件再一次顯示出來更快。 b. 也要記住關(guān)閉其他的標(biāo)記 在上面的例子中,我們僅僅早一些關(guān)閉TABLE標(biāo)記,就能讓頁面在瀏覽器顯示的更快些。以此類推,還有一些類似的標(biāo)記也有同樣的特性。 比如產(chǎn)生列表框和組合框OPTION標(biāo)記和產(chǎn)生列表項的LI標(biāo)記。通常,ASP程序員存取數(shù)據(jù)庫,并把數(shù)據(jù)送入通過OPTION建立的列表框或組合框中,這時候在代碼中寫上一個關(guān)閉OPTION標(biāo)記,這樣簡單的改變也能使頁面在瀏覽器中顯示的更快。3.2.2 SQL Server2000數(shù)據(jù)庫編程SQL Server 2000 是微軟公司最新版的大型數(shù)據(jù)庫服務(wù)器,其性能指標(biāo)在各方面都有趕超O
39、racle 數(shù)據(jù)庫的趨勢。SQL Server 2000 也是關(guān)系型數(shù)據(jù)庫系統(tǒng),是基于客戶機(jī)/服務(wù)器(Client/Server,簡稱C/S 結(jié)構(gòu))的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(Relational DataBase Management System簡稱RDBMS)。SQL Server 2000可以在多種操作系統(tǒng)上運(yùn)行,服務(wù)器環(huán)境可以是 Windows NT、Windows 2000 Server或者Windows9x,客戶機(jī)環(huán)境可以是 Windows NT、Windows 2000 Server、Windows 9x,第三方平臺和Internet 瀏覽器。SQL Server使用的數(shù)
40、據(jù)庫編程語言是 Transat-SQL,Transact-SQL支持最新的SQL標(biāo)準(zhǔn),并且增加了許多新的功能和特點(diǎn),使用Transact-SQL可以訪問、查詢、修改和管理關(guān)系型數(shù)據(jù)庫系統(tǒng)。繼SQL 7增加了四種新的數(shù)據(jù)類型之后, SQL Server 2000又提供了三種新的數(shù)據(jù)類型,分別是 bigint,sql_variant 和table。在SQL里面,用戶可以建立自定義的函數(shù),函數(shù)返回值可以是一個值,也可以是一個表。設(shè)計數(shù)據(jù)庫要依據(jù)一定的邏輯理論,如要遵守第一范式、第二范式、第三范式等。一定要對其進(jìn)行合理且優(yōu)化的設(shè)置,這些在 SQL Server 2000 里都可以直接進(jìn)行設(shè)置
41、。A. SQL Server 2000 數(shù)據(jù)庫的安全配置由于SQL Server 不能更改sa用戶名稱,也不能刪除這個超級用戶,所以,必須對這個帳號進(jìn)行最強(qiáng)的保護(hù),當(dāng)然,包括使用一個非常健壯的密碼。最好不要在數(shù)據(jù)庫應(yīng)用中使用sa帳號,只有當(dāng)沒有其他方法登錄到SQL Server實(shí)例(例如,當(dāng)其他系統(tǒng)管理員不可用或忘記了密碼)時才使用sa。建議數(shù)據(jù)庫管理員新建立一個擁有與sa一樣權(quán)限的超級用戶來管理數(shù)據(jù)庫。安全的帳號策略還包括不要讓擁有管理員權(quán)限的帳號泛濫。SQL Server的認(rèn)證模式有Windows身份認(rèn)證和混合身份認(rèn)證兩種。如果數(shù)據(jù)庫管理員不希望操作系統(tǒng)管理員通過操作系統(tǒng)登陸來接觸數(shù)據(jù)庫的
42、話,可以在帳號管理中把系統(tǒng)帳號“BUILTINadminstrators”刪除。不過這樣做的結(jié)果是一旦sa帳號忘記密碼的話,就沒有辦法恢復(fù)了。很多主機(jī)使用數(shù)據(jù)庫應(yīng)用只是用于查詢、修改等簡單功能,應(yīng)根據(jù)實(shí)際需要分配帳號。并賦予僅僅能夠滿足應(yīng)用要求和需要的權(quán)限。例如,只要查詢功能的那么就使用一個簡單public帳號能夠select就可以了。B. 存儲過程將常用的或很復(fù)雜的工作,預(yù)先用SQL語句寫好并給定一個指定的名稱存儲起來,那么以后需要數(shù)據(jù)庫提供與已定義好的存儲過程的功能相同的服務(wù)時,只需要調(diào)用execute,即可自動完成命令。存儲過程的種類:(1)系統(tǒng)存儲過程:以sp_開頭,用于進(jìn)行系統(tǒng)的各項
43、設(shè)定、取得信息、相關(guān)管理工作,如sp_help就是取得指定對象的相關(guān)信息;(2)擴(kuò)展存儲過程:以XP_開頭,用來調(diào)用操作系統(tǒng)提供的功能。如:exec masterxp_cmdshell ping ;(3)用戶自定義的存儲過程,常用格式為:Creaate procedure procedue_nameparameter data_typeoutputwithrecompile|encryptionas sql_statementoutput:表示此參數(shù)是可傳回的;recompile:表示每次執(zhí)行此存儲過程時都重新編譯一次;encrytion:所創(chuàng)建的存儲過程的內(nèi)容會被加密。簡而
44、言之,能用存儲過程時就要用存儲過程。存儲過程有著極大的優(yōu)點(diǎn)。WebCourseSettlement系統(tǒng)中將普遍使用存儲過程當(dāng)然這里也并沒有將所有數(shù)據(jù)庫操作全部用存儲過程實(shí)現(xiàn)。在一定程度上數(shù)據(jù)庫就是整個系統(tǒng)、尤其是在傳統(tǒng)的瀑布式軟件開發(fā)過程中。數(shù)據(jù)庫系統(tǒng)是整個體統(tǒng)的基礎(chǔ),數(shù)據(jù)庫設(shè)計的好壞直接影響到整個系統(tǒng)的結(jié)構(gòu)、整個系統(tǒng)的實(shí)現(xiàn)復(fù)雜程度、整個系統(tǒng)的性能和安全性、可維護(hù)性等。在UML建模的最后得到了系統(tǒng)數(shù)據(jù)庫的基本信息和它們之間的基本(約束)關(guān)系。建設(shè)好一個站點(diǎn)后,把盡可能多的SQL命令轉(zhuǎn)換為儲存過程是個好主意。與其在ASP網(wǎng)頁內(nèi)部執(zhí)行SQL查詢,不如調(diào)用包含這些查詢的存儲過程。使用SQL存儲的過程
45、的理由很多,如下所列。(1)SQL存儲過程執(zhí)行起來比SQL命令文本快得多。當(dāng)一個SQL語句包含在存儲過程中時,服務(wù)器不必每次執(zhí)行它時都要分析和編譯它。(2)可以在多個網(wǎng)頁中調(diào)用同一個存儲過程,這使得站點(diǎn)易于維護(hù)。如果一個SQL語句需要做某些改動,只要做一次即可。(3)可以在存儲過程中利用Transact SQL的強(qiáng)大功能。一個SQL存儲過程可以包含多個SQL語句??梢允褂米兞亢蜅l件。這意味著可以用存儲過程建立非常復(fù)雜的查詢,以非常復(fù)雜的方式更新數(shù)據(jù)庫。(4)最后,這也許是最重要的,在存儲過程中可以使用參數(shù)??梢詡魉秃头祷貐?shù),還可以得到一個返回值。3.2.3 Html 語言的巧妙運(yùn)用HTML是
46、萬維網(wǎng)的語言,而萬維網(wǎng)則是最激動人心的電子通信的新方法。雖然你可能已聽說過“萬維網(wǎng)”,“因特網(wǎng)”和“HTML”這類術(shù)語,但你或許并不知道它們的確切含義。因特網(wǎng)是一個能共享信息和思想的互聯(lián)的計算機(jī)系統(tǒng)。萬維網(wǎng)(也叫Web或WWW)是因特網(wǎng)的擴(kuò)展,它允許在一個稱為Web頁的頁面上同時顯示文稿和彩色圖形。HTML是超級文本標(biāo)記語言的縮寫。它能很容易地理解你為創(chuàng)建Web頁而加到正規(guī)文本文件上的一組代碼。A. 去除超級鏈接的下劃線以及在超級鏈接上實(shí)現(xiàn)鼠標(biāo)懸停變色 在默認(rèn)情況下,用DreamWeaver設(shè)計的網(wǎng)頁中的超級鏈接都有下劃線,看上去不大美觀。要去除這些討厭的下劃線,很多報刊介紹的方法都是在HTM
47、L源代碼中手工加入一段代碼,其實(shí)在DreamWeave中很容易去除鏈接的下劃線。首先在DreamWeaver的Document Windows中隨便建立一個鏈接,你可以看到這個鏈接會有下劃線。怎樣去除這條下劃線呢?(1)在點(diǎn)擊菜單欄上的"Text"|"CSS Styles"| "Edit Style Sheet"(或者直接按快捷鍵Ctrl+shift+E),調(diào)出Edit Style Sheet(編輯樣式表)對話框窗口。 (2)點(diǎn)擊"New (新建)",然后在"New Style (新樣式)"對話
48、框中,點(diǎn)擊"Use CSS Selector"按鈕。 (3)在Selector欄中鍵入a, 然后點(diǎn)OK。 (4)隨后彈出"CSS 樣式定義"對話框,在Type類的decoration(裝飾)中,勾選none,然后點(diǎn)OK,再點(diǎn)Done。你將立刻在Document Windows中發(fā)現(xiàn)鏈接的下劃線已經(jīng)消失了。那么又怎樣實(shí)現(xiàn)當(dāng)鼠標(biāo)懸停在鏈接上時鏈接變色呢?重復(fù)上述步驟中的的第一、第二步。然后點(diǎn)選Selector旁的下拉箭頭,選擇"a:hover",再點(diǎn)OK。在隨后彈出的 "Style definition for a: hover
49、"對話框中,在Type類的color中任意選擇一種顏色(比如選擇紅色),然后點(diǎn)OK,再點(diǎn)Done便完成了。按F12預(yù)覽,將鼠標(biāo)放在鏈接上,該鏈接是不是變成了紅色?如果在剛才的"Style definition for a: hover"對話框中,在Backgroud(背景)類里,選擇backgroud的顏色為綠色,那么當(dāng)你把鼠標(biāo)放在超級鏈接上時,不但鏈接會變成紅色,而且還會有綠色的背景。事實(shí)上,通過剛才的CSS 樣式定義對話框,你還可以實(shí)現(xiàn)更多的特殊效果,有興趣的朋友不妨去好好琢磨一下。 B. 創(chuàng)建可反復(fù)使用的外部CSS樣式表 用DreamWeaver在某網(wǎng)頁中創(chuàng)
50、建了一種CSS樣式后,如果你要在另外的網(wǎng)頁中應(yīng)用該樣式,你不必從新創(chuàng)建該CSS樣式,只要你創(chuàng)建了外部CSS樣式表文件(external CSS style sheet),你便可以在今后任意調(diào)用該樣式表文件中的樣式。為了便于管理,先在站點(diǎn)所在文件夾中,新建一個文件夾,取名為CSS,專門用于放置外部樣式表文件(其擴(kuò)展名為css)。 (1)在Document Window中按Ctrl+shift+E,調(diào)出Edit Style Sheet(編輯樣式表)對話框窗口 。(2)點(diǎn)擊"link"。 (3)在彈出的Link External Style Sheet(鏈接外部樣式表)對話框,點(diǎn)
51、BROWSE,找到剛才創(chuàng)建的CSS文件夾。 (4)在Select Stylesheet File (選擇樣式表文件)窗口"文件名"欄中,鍵入*.css (*可以為任意名),請注意,事實(shí)上此時在CSS文件夾中并無樣式表文件,在"文件名"欄中鍵入的新名字將成為外部樣式表新文件的名字。比如鍵入title.css,,然后點(diǎn)Select | OK。 (5)在Edit Style Sheet(編輯樣式表)對話框窗口中,會新增加 title.css (link), 雙擊它。 (6)在彈出的"title.css"窗口中,點(diǎn)"New"
52、;。 (7)在"New Style"對話框中,點(diǎn)選"Make Custom Style (class)"按鈕 (8)在Name欄中鍵入某個名字,如myheadline,點(diǎn)OK。 (9)在接下來的"Style definition for .myheadline in title.css"對話框中,進(jìn)行字體、顏色等各種設(shè)置,完成后點(diǎn)OK。如還要創(chuàng)建新的樣式,再點(diǎn)"New",重復(fù)剛才的步驟(6)、(7)、(8)、(9),最后點(diǎn)"save"| "done",于是title.css這
53、個外部樣式表文件便創(chuàng)建好了。菜單欄上的"TEXT" |"CSS Styles"子菜單中將會列出title.css中的所有樣式。如要在其他網(wǎng)頁中調(diào)用這個title.css,只需重復(fù)上述1至3步,然后在Select Stylesheet File窗口"文件名"欄中輸入title.css。點(diǎn)"select"| "ok"| "done", title.css中所有的樣式便會出現(xiàn)在該網(wǎng)頁菜單欄上的"Text" |"CSS Styles"子菜單中,
54、你將可以在此網(wǎng)頁中應(yīng)用這些樣式。 3.2.4 VBScript合理運(yùn)用Microsoft Visual Basic Scripting Edition 是程序開發(fā)語言 Visual Basic 家族的最新成員,它將靈活的 Script 應(yīng)用于更廣泛的領(lǐng)域,包括 Microsoft Internet Explorer 中的 Web 客戶機(jī) Script 和 Microsoft Internet Information Server 中的 Web 服務(wù)器 Script。VBScript 使用 ActiveX Script 與宿主應(yīng)用程序?qū)υ?。使?ActiveX Script,瀏覽器和其他宿主應(yīng)用
55、程序不再需要每個 Script 部件的特殊集。ActiveX Script 使宿主可以編譯 Script、獲取和調(diào)用入口點(diǎn)及管理開發(fā)者可用的命名空間。通過 ActiveX Script,語言廠商可以建立標(biāo)準(zhǔn) Script 運(yùn)行時語言。Microsoft 將提供 VBScript 的運(yùn)行時支持。Microsoft 正在與多個 Internet 組一起定義 ActiveX Script 標(biāo)準(zhǔn)以使 Script 引擎可以互換。 ActiveX Script 可用在 Microsoft® Internet Explorer 和 Microsoft® Internet Informa
56、tion Server 中。SCRIPT 元素用于將 VBScript 代碼添加到 HTML 頁面中。 VBScript 代碼寫在成對的 <SCRIPT> 標(biāo)記之間。例如,以下代碼為一個測試傳遞日期的過程:<SCRIPT LANGUAGE="VBScript"> <!- Function CanDeliver(Dt) CanDeliver = (CDate(Dt) - Now()> 2 End Function -> </SCRIPT> 代碼的開始和結(jié)束部分都有 <SCRIPT> 標(biāo)記。LANGUAGE 屬性
57、用于指定所使用的 Script 語言。由于瀏覽器能夠使用多種 Script 語言,所以必須在此指定所使用的 Script 語言。注意 CanDeliver 函數(shù)被嵌入在注釋標(biāo)記(<!- 和 ->)中。這樣能夠避免不能識別 <SCRIPT> 標(biāo)記的瀏覽器將代碼顯示在頁面中。 因為以上示例是一個通用函數(shù)(不依賴于任何窗體控件),所以可以將其包含在頁面的 HEAD 部分: <HTML><HEAD><TITLE>訂購</TITLE> <SCRIPT LANGUAGE="VBScript"> <
58、!- Function CanDeliver(Dt) CanDeliver = (CDate(Dt) - Now() > 2 End Function-> </SCRIPT> </HEAD> <BODY>.SCRIPT 塊可以出現(xiàn)在 HTML 頁面的任何地方(BODY 或 HEAD 部分之中)。然而最好將所有的一般目標(biāo) Script 代碼放在 HEAD 部分中,以使所有 Script 代碼集中放置。這樣可以確保在 BODY 部分調(diào)用代碼之前所有 Script 代碼都被讀取并解碼。 上述規(guī)則的一個值得注意的例外情況是,在窗體中提供內(nèi)部代碼以響應(yīng)窗體
59、中對象的事件。例如,以下示例在窗體中嵌入 Script 代碼以響應(yīng)窗體中按鈕的單擊事件: <HTML> <HEAD> <TITLE>測試按鈕事件</TITLE> </HEAD><BODY> <FORM NAME="Form1"> <INPUT TYPE="Button" NAME="Button1" VALUE="單擊"><SCRIPT FOR="Button1" EVENT="onClick" LANGUAGE="VBScript"> MsgBox "按鈕被單擊!" </SCRIPT> </FORM> </BODY> </HTML> 大多數(shù) Script 代碼在 Sub 或 Functi
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五私企員工勞動合同與員工績效評估
- 2025年度無產(chǎn)權(quán)車庫轉(zhuǎn)讓及附屬綠化帶使用協(xié)議
- 二零二五年度科技型企業(yè)融資合作框架
- 2025年度礦山股份合作保險合同:礦山安全生產(chǎn)責(zé)任險與財產(chǎn)險合作協(xié)議
- 二零二五年度城市軌道交通工程用工管理協(xié)議
- 2025年度首飾抵押借款合同購買設(shè)計師首飾服務(wù)協(xié)議
- 2025年手房購房合同(含車位及儲藏室)
- 【央企招聘】中煤電力有限公司所屬企業(yè)公開招聘(24人)筆試參考題庫附帶答案詳解
- 2025遼寧鞍山市臺安農(nóng)業(yè)發(fā)展集團(tuán)有限公司招聘11人筆試參考題庫附帶答案詳解
- 2025福建投資集團(tuán)能源板塊去場招聘114人筆試參考題庫附帶答案詳解
- 2024年合肥市高三第二次教學(xué)質(zhì)量(二模)英語試卷(含答案)
- 新能源充電樁創(chuàng)業(yè)計劃書
- 2024屆浙江省初中學(xué)業(yè)水平測試中考科學(xué)測模擬試題(二模)附答案
- 2023年全國統(tǒng)一高考政治試卷(湖南卷)含答案與解析
- 運(yùn)動損傷的預(yù)防與處理預(yù)防和處理舞蹈運(yùn)動損傷
- 中班語言活動:小老虎的名片
- 某住宅樓招投標(biāo)文件
- 第四章-國防動員
- 2022云南省中考道法真題試卷和答案
- 跨文化商務(wù)交際導(dǎo)論-教學(xué)課件Unit 3 Cultural patterns
- 成語故事-引狼入室
評論
0/150
提交評論