網(wǎng)絡(luò)遠(yuǎn)程作業(yè)處理系統(tǒng)——畢業(yè)論文 (2)
《網(wǎng)絡(luò)遠(yuǎn)程作業(yè)處理系統(tǒng)——畢業(yè)論文 (2)》由會員分享,可在線閱讀,更多相關(guān)《網(wǎng)絡(luò)遠(yuǎn)程作業(yè)處理系統(tǒng)——畢業(yè)論文 (2)(51頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、南京工程學(xué)院畢業(yè)設(shè)計說明書(論文)中文摘要隨著網(wǎng)絡(luò)在社會的不斷普及,其在人們的學(xué)習(xí)和生活中發(fā)揮著越來越重要的作業(yè),也不斷地簡化人們地學(xué)習(xí)和生活。該系統(tǒng)就是建立在這個目的上的一次嘗試。遠(yuǎn)程作業(yè)提交交流系統(tǒng),利用網(wǎng)絡(luò)交流的優(yōu)勢,為教師與學(xué)生之間的交流搭建一座方便的橋梁。該系統(tǒng)的功能主要為:1、為師生提供一個網(wǎng)絡(luò)作業(yè)提交系統(tǒng);2、為師生提供一個實(shí)時在線交流系統(tǒng);3、為師生提供一個在線的留言系統(tǒng)。其中,作業(yè)提交系統(tǒng)實(shí)現(xiàn)文件在JSP網(wǎng)頁中的上傳和下載;實(shí)時在線交流系統(tǒng)實(shí)際就是一個在線聊天室,并考慮到師生這個特殊的服務(wù)對象,添加了網(wǎng)絡(luò)白板這個功能,使師生之間可以更加形象的交流;在線留言系統(tǒng)提供了與未在線的
2、人交流的功能。以上這些功能的實(shí)現(xiàn)都是建立在師生信息管理系統(tǒng)之上的,首先要建立完整的學(xué)生、教師和班級信息,以上3個主要系統(tǒng)才能正常工作。再就是為了減小網(wǎng)頁的負(fù)擔(dān),我設(shè)立了注冊登錄系統(tǒng),一定程度的減免了不相關(guān)人員的訪問。關(guān)鍵詞 網(wǎng)絡(luò) 在線 交流 前 言隨著計算機(jī)在社會的不斷普及和應(yīng)用,人們的工作效率得到了極大的提高。高等院校作為社會進(jìn)步的發(fā)動機(jī),計算機(jī)早已普及并得到了積極應(yīng)用。而隨著近年來的計算機(jī)網(wǎng)絡(luò)的普及,更大大方便了人們的工作和生活。利用現(xiàn)在已廣泛普及的計算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)教師與學(xué)生之間的遠(yuǎn)程交流,為教師和學(xué)生之間的交流構(gòu)建一個方便的平臺,就是我此次的畢業(yè)設(shè)計課題網(wǎng)絡(luò)遠(yuǎn)程作業(yè)處理系統(tǒng)。該系統(tǒng)利用網(wǎng)絡(luò)
3、,在構(gòu)架了服務(wù)器后,一方面,使學(xué)生能夠利用任何一臺能夠上網(wǎng)的計算機(jī)提交作業(yè),實(shí)現(xiàn)和在線教師的實(shí)時交流,留言給未在線的教師;另一方面,教師同樣能夠利用任意的一臺能上網(wǎng)的計算機(jī)接受服務(wù)器上學(xué)生提交的作業(yè),和同學(xué)實(shí)時交流,留言給以班級為單位的同學(xué)。該系統(tǒng)的內(nèi)容有:1登錄系統(tǒng)。自動區(qū)分登錄者為學(xué)生、教師、管理員,并顯示相應(yīng)頁面。2注冊系統(tǒng),只提供學(xué)生的注冊,教師由管理員添加,僅設(shè)1名管理員賬戶。3師生信息管理系統(tǒng),管理相關(guān)的師生信息。4只有目的用戶可見的留言板系統(tǒng)。通過對數(shù)據(jù)庫的匹配查詢實(shí)現(xiàn)。5包含網(wǎng)絡(luò)白板的聊天室系統(tǒng)。利用便捷的applet,通過多線程的應(yīng)用實(shí)現(xiàn)聊天室。網(wǎng)絡(luò)白板嵌入聊天室系統(tǒng)中,利用
4、JAVA中的canvas類實(shí)現(xiàn)。6基于JSP的文件上傳下載系統(tǒng)。基于jsp smartupload 組件實(shí)現(xiàn)。這6個系統(tǒng)將在以下章節(jié)中詳細(xì)介紹。本論文的總的結(jié)構(gòu)可分為引言、目錄、中英文摘要、數(shù)據(jù)庫設(shè)計、系統(tǒng)功能介紹、謝辭、參考文獻(xiàn)與附錄九大部分。其中系統(tǒng)功能介紹分為登錄系統(tǒng)、注冊系統(tǒng)、師生信息管理系統(tǒng)、留言板系統(tǒng)、包含網(wǎng)絡(luò)白板的聊天室系統(tǒng)、文件上傳下載系統(tǒng),共6個部分來詳細(xì)介紹。參考文獻(xiàn)與附錄是關(guān)于開發(fā)該系統(tǒng)所參考的數(shù)據(jù)和書籍,附錄是一些輔助說明。目錄是畢業(yè)論文各章節(jié)所在頁的具體說明。網(wǎng)絡(luò)遠(yuǎn)程作業(yè)處理系統(tǒng)主要的開發(fā)工具為Dreamweaver MX 2004,SQL Sever 2000和JB
5、uilder9。第1章 開發(fā)工具簡介1.1 Dreamweaver MX 2004Dreamweaver MX 2004 是 建立 Web 站點(diǎn)和應(yīng)用程序的專業(yè)工具。它將可視布局工具、應(yīng)用程序開發(fā)功能和代碼編輯支持組合為一個功能強(qiáng)大的工具,使每個級別的開發(fā)人員和設(shè)計人員都可利用它快速創(chuàng)建接口吸引人并且基于標(biāo)準(zhǔn)的站點(diǎn)和應(yīng)用程序。從對基于 CSS 的設(shè)計提供領(lǐng)先的支持到手動編碼功能,Dreamweaver 在一個集成和高效的環(huán)境中為專業(yè)人員提供了所需的工具。開發(fā)人員可以將其選擇的服務(wù)器技術(shù)與 Dreamweaver 配合使用,建立將用戶連接到數(shù)據(jù)庫、Web 服務(wù)和舊式系統(tǒng)的強(qiáng)大 Internet
6、應(yīng)用程序。1.2 BorlandJBuilder9BorlandJBuilder9全球最具威力之Java開發(fā)環(huán)境,相較過去版本,JBuilder提供更多省時工具與精靈,讓您團(tuán)隊(duì)生產(chǎn)力提升至極限,協(xié)助您在最短時間內(nèi)開發(fā)更好的軟件。這僅是完整Borland解決方案的一部份,JBuilder9Enterprise以融入應(yīng)用程序開發(fā)周期(applicationlifecycle)為第一要務(wù),能夠使用您現(xiàn)有之技術(shù)投資,并給您最大的自由與彈性,讓您以自己的方式與流程完成工作。BorlandOptimizeitSuite已包含于JBuilder9Enterprise版中:JBuilder9所包含之創(chuàng)新工具與
7、加值功能將企業(yè)級Java開發(fā)提升至新境界。1.3 SQL Sever 2000Microsoft SQL Server 2000 包括很多圖形和命令提示實(shí)用工具,允許用戶、程序員和管理員進(jìn)行下列操作: 1管理和配置 SQL Server。2確定 SQL Server 復(fù)本中的目錄信息。3設(shè)計和測試查詢以檢索數(shù)據(jù)。4復(fù)制、導(dǎo)入、導(dǎo)出和轉(zhuǎn)換數(shù)據(jù)。Microsoft SQL Server 2000 擴(kuò)展了 Microsoft SQL Server 7.0 版的性能、可靠性、質(zhì)量和易用性。Microsoft SQL Server 2000 增加了幾種新的功能,由此成為大規(guī)模聯(lián)機(jī)事務(wù)處理 (OLTP)、
8、數(shù)據(jù)倉庫和電子商務(wù)應(yīng)用程序的優(yōu)秀數(shù)據(jù)庫平臺。SQL Server 7.0 版中提供的 OLAP 服務(wù)功能現(xiàn)在稱為 SQL Server 2000 Analysis Services。術(shù)語OLAP 服務(wù)已被術(shù)語Analysis Services取代。Analysis Services 還包括一個新的數(shù)據(jù)挖掘組件。SQL Server 7.0 版中包含的知識庫組件現(xiàn)在稱為 Microsoft SQL Server 2000 Meta Data Services?,F(xiàn)在提及該組件時使用術(shù)語Meta Data Services。知識庫這個術(shù)語只在談及 Meta Data Services中的知識庫引擎時
9、才使用。第51頁第2章 相關(guān)技術(shù)文檔2.1 JSP技術(shù)JavaServer Pages (JSP) 是一種以 Java為主的跨平臺web開發(fā)語言。JSP與微軟的Active Server Pages 兼容,但它是使用類似HTML的卷標(biāo)以及Java程序代碼段而不是VBScript。JSP與伺服端的JavaScript不同。網(wǎng)站服務(wù)器會自動將以JSP寫成的Java程序代碼段轉(zhuǎn)換成Java servlets。而許多先前必須以Perl手寫程序或服務(wù)器特定的API(如ASP)控制的功能也都可透過JSP來自動化處理。JavaServer Pages(JSP)使得我們能夠分離頁面的靜態(tài)HTML和動態(tài)部分。H
10、TML可以用任何通常使用的Web制作工具編寫,編寫方式也和原來的一樣;動態(tài)部分的代碼放入特殊標(biāo)記之內(nèi),大部分以“%”開始,以“%”結(jié)束。T JSP頁面文件通常以.jsp為擴(kuò)展名,而且可以安裝到任何能夠存放普通Web頁面的地方。雖然從代碼編寫來看,JSP頁面更象普通Web頁面而不象Servlet,但實(shí)際上,JSP最終會被轉(zhuǎn)換成正規(guī)的Servlet,靜態(tài)HTML直接輸出到和Servlet service方法關(guān)聯(lián)的輸出流。JSP到Servlet的轉(zhuǎn)換過程一般在出現(xiàn)第一次頁面請求時進(jìn)行。因此,如果你希望第一個用戶不會由于JSP頁面轉(zhuǎn)換成Servlet而等待太長的時間,希望確保Servlet已經(jīng)正確地編
11、譯并裝載,你可以在安裝JSP頁面之后自己請求一下這個頁面。 另外,許多Web服務(wù)器允許定義別名,所以一個看起來指向HTML文件的URL實(shí)際上可能指向Servlet或JSP頁面。 除了普通HTML代碼之外,嵌入JSP頁面的其他成分主要有如下三種:腳本元素(Scripting Element),指令(Directive),動作(Action)。腳本元素用來嵌入Java代碼,這些Java代碼將成為轉(zhuǎn)換得到的Servlet的一部分;JSP指令用來從整體上控制Servlet的結(jié)構(gòu);動作用來引入現(xiàn)有的組件或者控制JSP引擎的行為。為了簡化腳本元素,JSP定義了一組可以直接使用的變量(預(yù)定義變量),比如前面
12、代碼片斷中的request就是其中一例。 注意本文以JSP 1.0規(guī)范為基礎(chǔ)。和0.92版相比,新版本的JSP作了許多重大的改動。雖然這些改動只會使JSP變得更好,但應(yīng)注意1.0的JSP頁面幾乎和早期的JSP引擎完全不兼容。 JSP語法概要表 JSP元素、語法、說明、備注如下 JSP表達(dá)式 %= expression % 計算表達(dá)式并輸出結(jié)果。 等價的XML表達(dá)是: jsp:expression expression /jsp:expression 可以使用的預(yù)定義變量包括:request,response,out,session,application,config,pageContext。
13、這些預(yù)定義變量也可以在JSP Scriptlet中使用。 JSP Scriptlet % code % 插入到service方法的代碼。 等價的XML表達(dá)是: jsp:scriptlet code /jsp:scriptlet JSP聲明 %! code % 代碼被插入到Servlet類(在service方法之外)。 等價的XML表達(dá)是: jsp:declaration code /jsp:declaration page指令 % page att=val % 作用于Servlet引擎的全局性指令。 等價的XML表達(dá)是 jsp:directive.page att=val。 合法的屬性如下表,
14、其中粗體表示默認(rèn)值: import=package.class contentType=MIME-Type isThreadSafe=true|false session=true|false buffer=size kb|none autoflush=true|false extends=package.classinfo=message errorPage=url isErrorPage=true|false language=java include指令 % include file=url % 當(dāng)JSP轉(zhuǎn)換成Servlet時,應(yīng)當(dāng)包含本地系統(tǒng)上的指定文件。 等價的XML表達(dá)是: jsp
15、:directive.include file=url. 其中URL必須是相對URL。 利用jsp:include動作可以在請求的時候(而不是JSP轉(zhuǎn)換成Servlet時)引入文件。 JSP注釋 %- comment -% 注釋;JSP轉(zhuǎn)換成Servlet時被忽略。 如果要把注釋嵌入結(jié)果HTML文檔,使用普通的HTML注釋標(biāo)記- comment -。 jsp:include動作jsp:include page=relative URL flush=true/ 當(dāng)Servlet被請求時,引入指定的文件。 如果你希望在頁面轉(zhuǎn)換的時候包含某個文件,使用JSP include指令。 注意:在某些服務(wù)器
16、上,被包含文件必須是HTML文件或JSP文件,具體由服務(wù)器決定(通常根據(jù)文件擴(kuò)展名判斷)。 jsp:useBean動作 jsp:useBean att=val*/ 或者 jsp:useBean att=val* . /jsp:useBean 尋找或?qū)嵗粋€Java Bean。 可能的屬性包括: id=name scope=page|request |session|application class=package.class type=package.class beanName=package.class jsp:setProperty動作 jsp:setProperty att=val
17、*/ 設(shè)置Bean的屬性。既可以設(shè)置一個確定的值,也可以指定屬性值來自請求參數(shù)。 合法的屬性包括: name=beanName property=propertyName|*param=parameterName value=val jsp:getProperty動作 jsp:getProperty name=propertyName value=val 提取并輸出Bean的屬性。 jsp:forward動作 jsp:forward page=relative URL/ 把請求轉(zhuǎn)到另外一個頁面。 jsp:plugin動作 jsp:plugin attribute=value* . /jsp:p
18、lugin 根據(jù)瀏覽器類型生成OBJECT或者EMBED標(biāo)記,以便通過Java Plugin運(yùn)行Java Applet。 關(guān)于模板文本(靜態(tài)HTML) ,許多時候,JSP頁面的很大一部分都由靜態(tài)HTML構(gòu)成,這些靜態(tài)HTML也稱為“模板文本”。模板文本和普通HTML幾乎完全相同,它們都遵從相同的語法規(guī)則,而且模板文本也是被Servlet直接發(fā)送到客戶端。此外,模板文本也可以用任何現(xiàn)有的頁面制作工具來編寫。 唯一的例外在于,如果要輸出“%”,則模板文本中應(yīng)該寫成“%”。2.2 APPLET技術(shù)2.2.1 Applet說明:1) 首先Applet一般是從java.applet.Applet中繼承過
19、來的;2) paint()方法必須是public,不然不能被其它程序正確調(diào)用;3) 由于paint方法使用了Graphics類,所以Applet需要引用java.awt.4) Graphics,當(dāng)然如果其它的類如果也可以實(shí)現(xiàn)Graphics類的功能,也可以引用之;5) 在Applet中沒有public static void main這個方法,所以它不能獨(dú)立執(zhí)行,必須由專門的程序(如游覽器)調(diào)用執(zhí)行,Applet程序被調(diào)用后,會自動執(zhí)行paint方法。6) 在Html中使用標(biāo)簽APPLET來引用Applet,code屬性指定Applet的程序名,這是一個簡單的Applet引用方法,當(dāng)引入的Ap
20、plet與html文件在同一個目錄下,不用加路徑說明,如果不是可以使用codebase指定applet所在的路徑,路徑表示方法與html中的一樣;7) 其它屬性width及屬性height是HTML的標(biāo)準(zhǔn)屬性。還有另一個方法可以測試Applet,就是使用appletViewer命令,查看html文件中引入的applet小程序,該命令會忽略html代碼,直接執(zhí)行applet代碼。2.2.2 Applet參數(shù)使用方法在Applet中可以使用標(biāo)簽向Applet傳遞參數(shù),如:當(dāng)applet執(zhí)行時,這些參數(shù)就會被傳入,可以在init方法中使用getParameter()方法獲取這些傳入?yún)?shù)的值,如get
21、Parameter(font),該方法返回值始終是String類型的,所以必要的時候還需進(jìn)行相應(yīng)的類型轉(zhuǎn)換。如果沒有相應(yīng)的傳入?yún)?shù),那么getParameter()方法會返回null值。2.2.3 Applet基本方法從java.applet.Applet繼承過來的applet會有五個基本的方法:(1) init()方法:當(dāng)applet被加載時,會首先執(zhí)行init方法,該方法相當(dāng)于java application中的main,該方法只能被執(zhí)行一次;(2) start()方法:init方法執(zhí)行完畢會就會自動執(zhí)行start方法,start方法可以被反復(fù)執(zhí)行,如一個applet被stop后,可以使用
22、start方法重新開動它;(3) stop()方法:停止執(zhí)行applet,與start方法相對應(yīng)(4) destroy()方法:與init方法相對應(yīng);(5) paint()方法:輸出指定內(nèi)容,paint方法會被反復(fù)的調(diào)用,在applet初始化時、窗口移動時等;(6) repaint()方法:該方法調(diào)用update方法;(7) update()方法:該方法清空屏幕的內(nèi)容后,再調(diào)用paint方法重畫;paint,repaint及update方法是實(shí)現(xiàn)Applet中動畫的三個主要函數(shù),一般在update方法中調(diào)用g.clipRect方法規(guī)則paint的區(qū)域,這樣paint方法只更新指定區(qū)域的內(nèi)容;(
23、8) 以上這些方法在必須的時候可以重載,并且不需要在我們的applet中顯示的調(diào)用,可以自動執(zhí)行(當(dāng)然也可以顯示調(diào)用);2.2.4 Applet中的線程在Applet中如果需要用到動畫或者后臺數(shù)據(jù)處理等需要占用大量資源的功能時,最好使用線程。(1) 要在applet支持線程,一般需要實(shí)現(xiàn)Runnable接口,所以在本例類的聲明中加了implements Runnable;(2) 在Runable接口中定義了run()方法,當(dāng)線程start時,會調(diào)用這個方法;所以需要實(shí)現(xiàn)該方法;(3) 要使用線程當(dāng)然需要實(shí)例化類Thread(Thread是屬于java.lang包):Thread runner
24、= new Thread(this),這里的初始化參數(shù)this指定的applet對象;(4) 接下來在applet的start方法中調(diào)用runner.start()方法開始創(chuàng)建線程,線程創(chuàng)建完后,運(yùn)行run方法;(5) 在run方法中實(shí)現(xiàn)真正要實(shí)現(xiàn)的內(nèi)容,本例修改了theDate的值后,調(diào)用repaint方法,該方法的調(diào)用觸發(fā)了paint方法的執(zhí)行;(6) 在stop方法中結(jié)束線程的運(yùn)行。第3章 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計根據(jù)該課題的要求,為了實(shí)現(xiàn)相應(yīng)的網(wǎng)站功能并方便用戶,我建立了4個表。3.1 用戶信息表(tuser)列名數(shù)據(jù)類型可否為空說明suserchar不可學(xué)生學(xué)號,主鍵namechar不可用
25、戶名,主鍵codechar可密碼isteacherreal不可是否是教師administratorreal可是否是管理員3.2 班級信息表(Tstudentnum)列名數(shù)據(jù)類型可否為空說明classchar不可班級號,主鍵studentnumchar不可學(xué)生數(shù)3.3 留言信息表(message)列名數(shù)據(jù)類型可否為空說明titlechar不可主題名,主鍵nametext不可留言人姓名timedatatime可留言時間contenttext不可留言內(nèi)容isteacherchar不可是否是教師rnamechar不可收信人姓名3.4 任課信息表(adds)列名數(shù)據(jù)類型可否為空說明teacherchar
26、不可教師姓名,主鍵coursechar不可課程名,主鍵classchar不可班級名,主鍵在這4個表中,用戶信息表(tuser)存儲所有合法的用戶信息。用于在登錄時的檢驗(yàn),以及其他一些相應(yīng)的修改用戶信息的頁面。班級表(Tstudentnum)和任課信息表用于文件下載頁面,以提供文件的下載地址。第4章 系統(tǒng)頁面介紹4.1 登錄頁面流程圖登錄、注冊界面(login.jsp)核實(shí)頁面(ValidateUser.jsp)學(xué)生頁面(student.htm)教師頁面(teacher.htm)管理員頁面(admin.htm)留言頁面(index.htm)上傳文件頁面(upload.jsp)學(xué)生聊天室頁面(sa
27、pplet.jsp)留言頁面(index.htm)下載文件頁面(TeacherPage2.jsp)教師聊天室頁面(tapplet.jsp)管理學(xué)生頁面(delestudent.jsp)添加教師頁面(addteacher.jsp)刪除教師頁面(deleteacher.jsp)管理留言信息頁面(managelyb.jsp)管理任課信息頁面(maadds.jsp)管理班級信息頁面(maclass.jsp)修改密碼頁面(changecode.jsp)修改密碼頁面(changecode.jsp)修改密碼頁面(changecode.jsp)學(xué)生注冊頁面(UserInfo.jsp)登錄失敗頁面(fail.h
28、tm)4.2 系統(tǒng)主要頁面詳述4.1.1 登錄、注冊頁面(login.jsp)該頁面主要是一個表單,提供兩個選擇:注冊或登錄。在填寫完用戶名和密碼兩項(xiàng)內(nèi)容后按下提交鍵進(jìn)入核實(shí)頁面(ValidateUser.jsp),或點(diǎn)擊注冊鍵進(jìn)入注冊信息填寫頁面(UserInfo.jsp)。在該頁面代碼中我添加了一個javascript函數(shù),使該頁面具有了粗略的錯誤提示功能:在用戶未輸入用戶名和密碼前表單不會被提交至登錄的核實(shí)頁面(ValidateUser.jsp)。4.1.2 核實(shí)頁面(ValidateUser.jsp)該頁面接受登錄、注冊頁面(login.jsp)提交的用戶名和密碼兩項(xiàng)信息并以此進(jìn)行數(shù)據(jù)
29、庫查詢,若查詢成功,則將該用戶的姓名、學(xué)號和該用戶是否為教師的信息分別記入session變量“name”、“snum”、“Isteacher”中,并根據(jù)數(shù)據(jù)庫查詢的結(jié)果決定下一個顯示的頁面:學(xué)生頁面(student.htm),教師頁面(teacher.htm),管理員頁面(administrator.htm)和登錄失敗頁面(fail.htm)。在這個頁面中,我另外還設(shè)置了一個session變量“l(fā)ogin”當(dāng)成功驗(yàn)證后賦值為“ok”。該變量的作用是為驗(yàn)證已登錄頁面(CheckValid.jsp)提供是否以驗(yàn)證的信息。在該頁面中,我使用了javabean技術(shù),將連接數(shù)據(jù)庫的工作建成了一個名為co
30、nn的類,并在該頁面中引用。在后面介紹的文件中,也有許多文件引用了它。4.1.3 驗(yàn)證已登錄頁面(CheckValid.jsp)該頁面提供一個驗(yàn)證打開當(dāng)前頁面用戶是否登錄的功能。這樣是為了避免在有惡意人士在了解了頁面的文件名后,跳過登錄界面直接進(jìn)入后面的服務(wù)頁面。該頁面實(shí)際只是一個驗(yàn)證是否登錄的代碼,其他需要保護(hù)的頁面只要在文件開始時引用該文件就可以了,這樣可以避免在多個網(wǎng)頁中重復(fù)編寫相同的代碼。4.1.4 學(xué)生注冊頁面(UserInfo.jsp)該頁面主要是一個表單,負(fù)責(zé)從用戶獲得相關(guān)的信息,提交給注冊信息提交頁面(CheckUserInfo.jsp)。4.1.5 注冊頁面提交頁面(Chec
31、kUserInfo.jsp)該頁面接受學(xué)生注冊頁面(UserInfo.jsp)提交的信息。使用javabean,引用了兩個類,分別為conn和UserInfo。前者用來獲得用戶的學(xué)號,用來進(jìn)行唯一性校驗(yàn);后者用來對接受的信息進(jìn)行校驗(yàn),對“學(xué)號”、“用戶名”、“密碼”、“重復(fù)密碼”提供空檢驗(yàn),“學(xué)號”必須為8位數(shù)字,“密碼” 與“重復(fù)密碼”必須一致,否則就會提示相應(yīng)的糾錯信息。在確認(rèn)提交的信息無錯后,嘗試進(jìn)行數(shù)據(jù)庫輸入操作。若操作成功,則顯示數(shù)據(jù)庫操作成功信息和輸入者的姓名、學(xué)號,如下圖所示。若操作失敗,則顯示數(shù)據(jù)庫操作失敗信息,提示重新嘗試。4.1.6 學(xué)生頁面(student.htm)此頁面
32、為一框架頁面,3個框架分別指向?qū)W生選擇頁面(StudentPage.jsp)、學(xué)生登錄默認(rèn)界面(student1.htm)和顯示留言頁面(view_message.jsp)。4.1.7 學(xué)生選擇頁面(StudentPage.jsp)該頁面提供了學(xué)生成功登錄后的可用選項(xiàng)。我做成了5個超連接,分別連接不同的頁面。具體為“我要留言”對應(yīng)留言填寫頁面(index.htm),“上傳文件”對應(yīng)上傳文件選擇頁面(upload.jsp),“聊天室” 對應(yīng)學(xué)生聊天室頁面(sapplet.jsp),“修改密碼”對應(yīng)修改密碼頁面(changecode.jsp),“返回登錄界面”對應(yīng)登錄、注冊頁面(login.jsp
33、)。4.1.8 教師頁面(teacher.htm)同學(xué)生頁面一樣,此頁面也為一框架頁面。3個框架分別指向教師選擇頁面(TeacherPage.jsp)、教師登錄默認(rèn)界面(teacher1.htm)和顯示留言頁面(view_message.jsp)。4.1.9 教師選擇頁面(TeacherPage.jsp)該頁面提供了教師成功登錄后的可用選項(xiàng)。共7個超連接。分別為“我要留言”對應(yīng)留言填寫頁面(index.htm),“下載文件”對應(yīng)班級選擇頁面(TeacherPage2.jsp),“聊天室”對應(yīng)教師聊天室頁面(tapplet.jsp),“管理學(xué)生信息”對應(yīng)學(xué)生帳戶刪除頁面(delestudent.
34、jsp),“管理任課信息”對應(yīng)添加認(rèn)課信息頁面(maadds.jsp),“修改密碼”對應(yīng)修改密碼頁面(changecode.jsp),“返回登錄界面”對應(yīng)登錄、注冊頁面(login.jsp)。4.1.10 管理員頁面(admin.htm)框架頁面。同樣是3個框架,分別對應(yīng)管理員選擇頁面(administrator.jsp)、管理員登錄默認(rèn)界面(admin1.htm)和顯示留言頁面(view_message.jsp)。4.1.11 管理員選擇頁面(admin.jsp)該頁面提供了管理員成功登錄后的可用選項(xiàng)。共6個超連接?!疤砑咏處熜畔ⅰ睂?yīng)添加教師信息頁面(addteacher.jsp),“刪除
35、教師信息”對應(yīng)刪除教師信息頁面(deleteacher.jsp),“管理留言板”對應(yīng)管理留言板頁面(managelyb.jsp),“管理班級信息”對應(yīng)管理班級信息頁面(maclass.jsp),“修改管理員密碼”對應(yīng)修改密碼頁面(changecode.jsp),“返回登錄界面”對應(yīng)登錄、注冊頁面(login.jsp)。4.1.12 顯示留言頁面(view_message.jsp)該頁面顯示當(dāng)前用戶收到的留言信息。具體的工作為使用session變量“name”獲得當(dāng)前的用戶名,通過session變量“snum”獲得登錄者的學(xué)號信息,并進(jìn)行適當(dāng)處理獲得當(dāng)前用戶所屬的班級號,在數(shù)據(jù)庫中message
36、表的“rname”項(xiàng)上查找相匹配的條目,并按記入數(shù)據(jù)庫的時間順序列出。顯示留言的留言人,留言主題,留言時間和內(nèi)容。在數(shù)據(jù)庫為空時,提示“目前還沒有任何留言”,在當(dāng)前用戶未收到留言時提示“您還未收到任何留言”。4.1.13 留言頁面(index.htm)該頁面主要是一個表單,從用戶處獲得接受對象,留言主題和留言內(nèi)容三項(xiàng)信息,提交給添加留言頁面(add_message.jsp)?!安榭戳粞浴碧峁┯脩粢粋€在較大的框架中瀏覽留言的功能,對應(yīng)頁面名為nowview_message.jsp。4.1.14 添加留言信息頁面(add_message.jsp)該頁面一方面接受由留言頁面(index.htm)傳來
37、的表單數(shù)據(jù),并對其進(jìn)行簡單的校驗(yàn)。另一方面通過session變量獲得提交該留言者的身份信息是否為教師。該頁面檢查接受的各條目是否為空,若為空則顯示相應(yīng)的提示信息。當(dāng)確定接受的數(shù)據(jù)符合要求后,將進(jìn)行輸入數(shù)據(jù)庫的嘗試。若成功輸入,則重定位至成功添加留言頁面(successadd.htm)提示數(shù)據(jù)庫輸入成功。4.1.15 上傳文件頁面(upload.jsp)通過session變量“snum”獲得登陸學(xué)生的學(xué)號。取其前六位數(shù)字得到該生所在的班級。以此為根據(jù)對數(shù)據(jù)庫進(jìn)行兩次查詢獲得該班級的所有任課教師和所學(xué)課程放入兩個菜單中,供學(xué)生選擇,并和用戶選擇的文件一起以表單形式提交給上傳處理頁面(doUploa
38、d.jsp).4.1.16 上傳處理頁面(doUpload.jsp)接收上傳頁面(upload.jsp)提交的相關(guān)信息,利用SmartUpdown組件實(shí)現(xiàn)文件上傳。其中SmartUpdown組件以javabean形式在頁面文件中被引用。4.1.17 下載處理頁面(doDownload.jsp)通過session變量獲得文件的下載地址,傳給SmartUpdown組件實(shí)現(xiàn)文件的下載。SmartUpdown組件同樣以javabean形式在頁面文件中被引用。4.1.18 修改密碼頁面(changecode.jsp)獲得用戶的新密碼,并以POST方式提交給修改密碼處理頁面(changecode2.jsp
39、)。4.1.19 修改密碼處理頁面(changecode2.jsp)接受修改密碼頁面(changecode.jsp)提交的信息。比較兩次密碼輸入是否一致。當(dāng)一致時進(jìn)行數(shù)據(jù)庫輸入操作。在操作成功時提示“密碼更新完成”,在失敗時提示“數(shù)據(jù)庫輸入中出現(xiàn)問題,請重試”。4.1.20 管理任課信息頁面(maadds.jsp)由用戶填寫相關(guān)信息,以POST方式提交到任課信息處理頁面(maadds2.jsp)。4.1.21 任課信息處理頁面(maadds2.jsp)從管理任課信息頁面(maadds.jsp)獲得課程和班級的信息,再從session變量“name”獲得教師名,然后進(jìn)行數(shù)據(jù)庫輸入操作。依據(jù)成功或
40、失敗分別提示相關(guān)信息。4.1.22 刪除教師頁面(deleteacher.jsp)從數(shù)據(jù)庫中輸出所有教師的信息。通過循環(huán),列表顯示。在每行后添加一個表單,設(shè)立一個屬性為隱藏,名字為“name” 的變量,其值為每行相應(yīng)的教師名。再設(shè)立一個屬性為提交,名字為“刪除按鈕”的按鍵。表單的目標(biāo)設(shè)為刪除教師處理頁面(deleteacher2.jsp)。4.1.23 刪除教師處理頁面(deleteacher2.jsp)從刪除教師頁面(deleteacher.jsp)頁面獲得需要刪除的教師的姓名,以此為依據(jù)進(jìn)行數(shù)據(jù)庫操作。根據(jù)操作的成功與否返回相應(yīng)的提示。4.1.24 學(xué)生聊天室頁面(sapplst.jsp)
41、本頁面引用了applet文件ChatApplet2.class。使用session變量獲得以登錄用戶的用戶名,并將此參數(shù)傳至該applet文件。進(jìn)入該頁面后點(diǎn)擊登錄按鍵就可以激活聊天室欄(需在服務(wù)器以開通的前提下,默認(rèn)登錄默認(rèn)聊天室)。選擇自己想要進(jìn)入的聊天室點(diǎn)擊“加入聊天室”按鈕就可以開始在線交流了在“當(dāng)前交談室用戶”欄中可以觀察在線的用戶。右上為網(wǎng)絡(luò)白板,右下角的文本框?yàn)榱奶祜@示處,其下為聊天的發(fā)送處。在白板右側(cè)可以選擇當(dāng)前畫筆的顏色,白板上方室清除白板的功能鍵按鈕。暫停交談按鈕在被使用后,只能發(fā)送信息不能接受信息,再次點(diǎn)擊恢復(fù)聊天功能。第5章 系統(tǒng)功能詳述5.1 登錄系統(tǒng)登錄系統(tǒng)由2個頁
42、面,一個javabean文件和1個數(shù)據(jù)庫表組成:登錄、注冊頁面(login.jsp),核實(shí)頁面(ValidateUser.jsp),conn類文件和用戶信息表(tuser)。該系統(tǒng)對需要使用該系統(tǒng)的用戶進(jìn)行驗(yàn)證,并將合法用戶分類,再根據(jù)分類結(jié)果顯示不同的登錄界面。用戶在登錄、注冊頁面(login.jsp)中填寫相應(yīng)信息后按下提交鍵,經(jīng)過頁面中的javascript函數(shù)的簡單校驗(yàn)通過后將相應(yīng)信息提交給核實(shí)頁面(ValidateUser.jsp)。在該頁中,通過引用conn類調(diào)用用戶信息表與提交的數(shù)據(jù)相比較,決定下一個顯示的頁面。5.2 注冊系統(tǒng)注冊系統(tǒng)分為學(xué)生注冊系統(tǒng)和教師注冊系統(tǒng)。其中學(xué)生注冊
43、系統(tǒng)由3個頁面,一個javabean文件和1個數(shù)據(jù)庫表組成:登錄、注冊頁面(login.jsp),學(xué)生注冊頁面(UserInfo.jsp),注冊信息提交頁面(CheckUserInfo.jsp),UserInfo類文件和用戶信息表(tuser)。教師注冊系統(tǒng)也由3個頁面和1個數(shù)據(jù)庫表組成:管理員選擇頁面(admin.jsp), 添加教師信息頁面(addteacher.htm),添加教師處理頁面(addteacher.jsp)和用戶信息表(tuser).該系統(tǒng)實(shí)現(xiàn)添加合法用戶的添加功能。先介紹學(xué)生注冊系統(tǒng)。在登錄、注冊頁面(login.jsp)中選擇“注冊”按鈕,進(jìn)入學(xué)生注冊頁面。在學(xué)生注冊頁面
44、中,用戶填寫相應(yīng)的注冊信息,提交到注冊信息提交頁面。該頁面通過引用的UserInfo類進(jìn)行數(shù)據(jù)的校驗(yàn)工作,并在校驗(yàn)后將信息輸入用戶信息表。再介紹教師注冊系統(tǒng)。在管理員選擇頁面中選擇“添加教師信息”選項(xiàng),進(jìn)入添加教師信息頁面,用戶在該頁面填寫注冊所需的相關(guān)信息后選擇提交按鈕,將相關(guān)信息提交至添加教師處理頁面。由該頁面將相應(yīng)信息輸入用戶信息表。值得注意的是,由于用戶信息表中屬性“snum”的主鍵特性,必須為教師編寫學(xué)號。為此,我將教師的學(xué)號全部設(shè)為“00000000”。5.3 師生信息管理系統(tǒng) 師生信息管理系統(tǒng)由8個頁面和3個數(shù)據(jù)庫表組成:管理學(xué)生頁面(delestudent.jsp),管理學(xué)生處
45、理頁面(delestudent2.jsp),刪除教師頁面(deleteacher.jsp),刪除教師處理頁面(deleteacher2.jsp),管理任課信息頁面(maadds.jsp),任課信息處理頁面(maadds2.jsp),管理班級信息頁面(maclass.jsp),班級信息處理頁面(maclass2.jsp),用戶信息表(tuser),班級信息表(Tstudentnum)和認(rèn)課信息表(adds)。該系統(tǒng)主要實(shí)現(xiàn)在線的數(shù)據(jù)庫操作。根據(jù)用戶的權(quán)限可以對數(shù)據(jù)庫中的各個師生關(guān)系表進(jìn)行相應(yīng)的操作。具體權(quán)限如下:學(xué)生無任何修改相關(guān)表的權(quán)利。教師可以用戶信息表中的學(xué)生信息,對任課信息表進(jìn)行添加。管
46、理員可以對班級信息表進(jìn)行操作,可以修改用戶信息表中的教師信息。先介紹教師的相關(guān)操作,先是管理學(xué)生信息。以教師權(quán)限登錄后,在教師選擇頁面選擇管理學(xué)生信息按鍵,進(jìn)入管理學(xué)生信息頁面。填寫需要刪除的學(xué)生的姓名和學(xué)號,按下提交鍵將相應(yīng)數(shù)據(jù)提交至管理學(xué)生處理頁面。該頁面比較獲得的數(shù)據(jù)和用戶信息表中相應(yīng)的數(shù)據(jù)。若相符和就刪除該學(xué)生信息。再是管理任課信息。同樣以教師權(quán)限登錄后,在教師選擇頁面中選擇管理任課信息按鍵,進(jìn)入管理班級信息頁面。填寫相應(yīng)班級信息按下提交鍵進(jìn)入班級信息處理頁面,進(jìn)行數(shù)據(jù)庫輸入操作。再介紹管理員的相關(guān)操作,先是刪除教師信息。在以管理員身份登錄后,在管理員選擇頁面選擇刪除教師信息選項(xiàng),進(jìn)入
47、刪除教師信息頁面。該頁自動顯示當(dāng)前用戶信息表中的所用教師信息,并提供刪除選項(xiàng)。點(diǎn)擊需要刪除的教師信息所在行的刪除按鈕進(jìn)入刪除教師處理頁面。由該頁面執(zhí)行相應(yīng)的對用戶信息表的操作,并根據(jù)操作成敗返回相應(yīng)信息。再是管理班級信息。同樣以管理員身份進(jìn)入管理員選擇頁面后選擇管理班級信息選項(xiàng),進(jìn)入管理班級信息頁面。在該頁填寫班級號和班級人數(shù)信息,按下提交鍵將相關(guān)信息提交至任課信息處理頁面,由后者將相關(guān)信息輸入數(shù)據(jù)庫。5.4 留言板系統(tǒng)該系統(tǒng)由6個頁面和1個數(shù)據(jù)庫表組成:留言頁面(index.htm),添加留言頁面(add_message.jsp),顯示留言頁面(view_message.jsp),成功留言頁
48、面(successadd.htm),管理留言信息頁面(managelyb.htm),管理留言信息處理頁面(managelyb2.jsp)和留言信息表(message)。該系統(tǒng)的作用是實(shí)現(xiàn)師生之間的非實(shí)時交流。當(dāng)學(xué)生需要向教師提問而教師并不在線時,或教師想公布通告給相關(guān)班級時,或教師回答同學(xué)問題時都可以使用該系統(tǒng)實(shí)現(xiàn)。該系統(tǒng)有三個部分:提交留言、顯示留言和管理留言。先介紹提交留言部分。在學(xué)生選擇頁面、教師選擇頁面或管理員選擇頁面選擇我要留言選項(xiàng),進(jìn)入留言頁面。用戶在該頁填寫數(shù)據(jù)庫所需的“收言人”、“主題”和“內(nèi)容”后按下提交按鈕,進(jìn)入添加留言頁面。由該頁面進(jìn)行相應(yīng)的校驗(yàn)和數(shù)據(jù)庫輸入操作。在成功操
49、作后系統(tǒng)自動轉(zhuǎn)移至成功留言頁面提示已成功留言。再介紹顯示留言部分。在用戶成功登錄后系統(tǒng)將根據(jù)數(shù)據(jù)庫中的數(shù)據(jù)將用戶分類并顯示相應(yīng)的頁面框架。留言信息顯示頁面鑲嵌在這些框架中,顯示其它合法用戶給當(dāng)前用戶的留言。最后介紹管理留言部分。在本系統(tǒng)中只有管理員擁有刪除留言的權(quán)利。在管理員選擇頁面中選擇管理留言板選項(xiàng),進(jìn)入管理留言信息頁面。該頁面列出目前數(shù)據(jù)庫中的所有留言,并在每個留言后添加一個刪除按鈕。選擇想要刪除的留言按下刪除按鈕進(jìn)入管理留言信息處理頁面。由該頁面處理數(shù)據(jù)庫的相關(guān)操作并返回相應(yīng)的信息。5.5 包含網(wǎng)絡(luò)白板的聊天室系統(tǒng)該系統(tǒng)由2個頁面,17個applet類文件組成:學(xué)生聊天室頁面(sapp
50、let.jsp),教師(tapplet.jsp),SendDrawData.class類文件,TooManyRoomsException.class類文件,User.class類文件,AboutDialog.class類文件,ChatServer.class類文件, DataBag.class類文件, Logo.class類文件, NoSuchRoomException.class類文件, NotMemberException.class類文件, PleaseCloseSocketException.class類文件, QuitDialog.class類文件, Room.class 類文件,R
51、oomData.class類文件, RoomGroup.class類文件, Rooms.class類文件, ChatApplet2.class類文件 ,ChatApplet1.class類文件。該系統(tǒng)的功能為構(gòu)建一個在線聊天室,為在線師生提供在線交流服務(wù)。另外加入網(wǎng)絡(luò)白板,師生之間的交流更加形象生動,特別適合師生間的交流使用。運(yùn)行該系統(tǒng)的首要條件是在服務(wù)器端首先運(yùn)行ChatServer.class文件構(gòu)建留言服務(wù)器。其運(yùn)行情況如圖下所示:在成功啟動服務(wù)器后,登錄教師或?qū)W生選擇頁面。選擇聊天室選項(xiàng),啟動相應(yīng)的applet程序。其中學(xué)生引用ChatApplet2類文件,教師引用ChatApplet
52、1類文件。這兩個applet程序的大部分是相同的,唯一的不同是教師聊天室擁有創(chuàng)建新聊天室的功能,而學(xué)生聊天室沒有,僅能加入默認(rèn)聊天室或教師建立的聊天室。該服務(wù)器提供了2個菜單,1個按鈕,1個下拉菜單和2個文本顯示框。在“file”菜單中提供“restsrt”和“Exit”兩個選項(xiàng),分別提供重啟聊天服務(wù)器和退出聊天服務(wù)器。“help” 記錄了版本信息?!癱lean”按鈕將清空其下的“message” 文本顯示框?!癿essage” 文本顯示框顯示相應(yīng)聊天室的聊天內(nèi)容和系統(tǒng)提示信息?!癱hat room”下拉窗口提供當(dāng)前工作的聊天室名,用以在“message”文本顯示框中查看相應(yīng)聊天室的情況?!皍
53、ser list”文本顯示框顯示相應(yīng)聊天室的當(dāng)前用戶。其他的類文件均是前三個類文件中所引用的類或方法的本體。5.6 文件上傳下載系統(tǒng)該系統(tǒng)包含個頁面,2個javabean類文件包和2個數(shù)據(jù)庫表:下載課程選擇頁面(TeacherPage2.jsp),下載班級選擇頁面( classPage.jsp),下載學(xué)生選擇頁面(personPage.jsp),下載文件處理頁面(doDownload.jsp),上傳文件選擇頁面(upload.jsp),上傳文件處理頁面(doUpload.jsp),DBconn類文件包,com類文件包,班級信息表(Tstudentnum),任課信息表(adds)。該系統(tǒng)的功能為
54、實(shí)現(xiàn)學(xué)生作業(yè)的在線提交。該系統(tǒng)分為兩部分。作業(yè)提交和作業(yè)接收。在該系統(tǒng)中,我應(yīng)用了網(wǎng)上業(yè)已成熟的JSP組件smartupdown實(shí)現(xiàn)這兩個功能。先介紹作業(yè)下載部分。流程圖如下圖所示:教師選擇頁面(TeacherPage.jsp)下載課程選擇頁面(TeacherPage2.jsp)下載班級選擇頁面(classPage.jsp)下載學(xué)生選擇頁面(personPage.jsp)下載文件處理頁面(doDownload.jsp)在教師選擇頁面中選擇“下載文件”選項(xiàng)。進(jìn)入下載課程選擇頁面,選擇相應(yīng)的課程后點(diǎn)擊“查看”按鍵進(jìn)入下載班級選擇頁面,選擇相應(yīng)的班級,進(jìn)入下載學(xué)生選擇頁面,選擇目標(biāo)學(xué)生的學(xué)號,進(jìn)入下
55、載文件處理頁面。由該頁面根據(jù)前面各頁的選擇,引用com類包中的smartupdown組件下載相應(yīng)的學(xué)生文件。再介紹作業(yè)上傳部分。在學(xué)生選擇頁面中選擇“上傳文件”選項(xiàng)。進(jìn)入上傳文件頁面,在空白處填寫文件地址或通過點(diǎn)擊“”按鈕獲得文件地址。在下面的兩個下拉菜單欄中選擇相應(yīng)的教師和課程,提交至上傳文件處理頁面。該頁引用smartupdown插件完成文件的上傳工作。第6章 系統(tǒng)運(yùn)行配置對于JSP頁面在windows系統(tǒng)中應(yīng)用,必須安裝相應(yīng)的軟件,并進(jìn)行相應(yīng)的環(huán)境變量配置。6.1 安裝J2SDK:到SUN官方站點(diǎn)(http:/)下載J2SDK的安裝文件:j2sdk-1_4_2_04-windows-i5
56、86-p.exe,下載之后安裝好J2SDK;安裝完之后,設(shè)置環(huán)境變量:我的電腦-屬性-高級-環(huán)境變量;選擇-系統(tǒng)變量(S):設(shè)置JAVA_HOME環(huán)境變量:單擊-新建,在變量名中輸入:JAVA_HOME在變量值中輸入:D:Java(假設(shè)J2SDK安裝在目錄D:Java下,就是J2SDK的安裝目錄。)然后-確定,到此已經(jīng)設(shè)置好JAVA_HOME環(huán)境變量。設(shè)置CLASSPATH環(huán)境變量:單擊-新建,在變量名中輸入:CLASSPATH在變量值中輸入:D:Javabin;.;D:Javalib;D:Javalibdt.jar;D:Javalibtools.jar(中間的點(diǎn)號“.”和分號“;”必不可少。
57、)然后-確定,到此已經(jīng)設(shè)置好CLASSPATH環(huán)境變量。設(shè)置PATH環(huán)境變量:單擊-新建,在變量名中輸入:PATH在變量值中輸入:D:Java;.;D:Javabin(中間的點(diǎn)號“.”和分號“;”必不可少。)然后-確定,到此已經(jīng)設(shè)置好JAVA_HOME環(huán)境變量。6.2 安裝Tomcat:到tomcat官方站點(diǎn)(http:/www.apache.org/dist/jakarta/tomcat-4/)下載tomcat:jakarta-tomcat-4.1.30.exe,下載之后安裝。(比如安裝在D:Tomcat下。)安裝完之后,設(shè)置環(huán)境變量:我的電腦-屬性-高級-環(huán)境變量;選擇-系統(tǒng)變量(S):設(shè)
58、置CATALINA_HOME環(huán)境變量:單擊-新建,在變量名中輸入:CATALINA_HOME在變量值中輸入:D:Tomcat然后-確定,到此已經(jīng)設(shè)置好CATALINA_HOME環(huán)境變量。設(shè)置CATALINA_BASE環(huán)境變量:單擊-新建,在變量名中輸入:CATALINA_BASE在變量值中輸入:D:Tomcat然后-確定,到此已經(jīng)設(shè)置好CATALINA_BASE環(huán)境變量。然后修改環(huán)境變量中的CLASSPATH,把Tomat安裝目錄下的commonlib下的servlet.jar追加到CLASSPATH中去,修改后的CLASSPATH如下:CLASSPATH=D:Javabin;.;D:Java
59、lib;D:Javalibdt.jar;D:Javalibtools.jar;D:Tomcatcommonlibservlet.jar接著可以啟動tomcat,在IE中訪問http:/localhost:8080,如果看到tomcat的歡迎頁面的話說明安裝成功了。如果上面的tomcat安裝成功的話,接下來繼續(xù)安裝JSP訪問SQLServer2000的驅(qū)動程序:6.3 安裝JSP訪問SQL Server 2000的驅(qū)動程序:從微軟的網(wǎng)站上下載驅(qū)動程序:SQLServer2000ForJDBC驅(qū)動程序,在Google中隨便搜索就有。然后將它安裝好。然后必須將安裝目錄中的lib目錄下三個jar文件:
60、msbase.jar,mssqlserver.jar,msutil.jar拷貝到Tomcat目錄下commonlib目錄下,之后,修改環(huán)境變量中的CLASSPATH。把SQL Server 2000 For JDBC 驅(qū)動程序安裝目錄下的D:SQLDriverForJDBClibmsbase.jar;D:SQLDriverForJDBClibmssqlserver.jar;D:SQLDriverForJDBCmsutil.jar;追加到CLASSPATH中去,修改后的CLASSPATH如下:CLASSPATH=D:Javabin;.;D:Javalib;D:Javalibdt.jar;D:Ja
61、valibtools.jar;D:LubeeTomcatcommonlibservlet.jar;D:SQLDriverForJDBClibmsbase.jar;D:SQLDriverForJDBClibmssqlserver.jar;D:SQLDriverForJDBCmsutil.jar必須重新啟動Tomcat!這樣做的目的是,jsp頁面在編譯過程中不會出現(xiàn)找不到sqlserverdriver類庫的問題測試連接SQLServer2000的JSP代碼Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver).newInstance(
62、);Stringurl=jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=pubs;/pubs為你的數(shù)據(jù)庫的Stringuser=sa;Stringpassword=admin;Connectionconn=DriverManager.getConnection(url,user,password);Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);Stringsql=selectjob_id,job_descfromjobs;ResultSetrs=stmt.executeQuery(sql);到此數(shù)據(jù)庫配置完成。第7章 系統(tǒng)重要部分技術(shù)實(shí)現(xiàn)7.1 包含網(wǎng)絡(luò)白板的技術(shù)實(shí)現(xiàn)7.1.1 工作原理 電子白板有兩種實(shí)現(xiàn)模型,一種是無白板服務(wù)器,因此僅支持兩個用戶直接連結(jié);另一種是有白板服務(wù)器,原則上不限制同時上線人數(shù)和交談室個數(shù),具體實(shí)現(xiàn)上可視服
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。