奚洋人事管理論文_第1頁
奚洋人事管理論文_第2頁
奚洋人事管理論文_第3頁
奚洋人事管理論文_第4頁
奚洋人事管理論文_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

70/70人事治理系統(tǒng)Personnelmanagementsystem專業(yè)計算機科學與進展班級計本101姓名奚洋指導教師俞向陽年月日目錄摘要 3第一章緒論 41.1人事治理系統(tǒng)需求分析 41.1.1人事治理系統(tǒng)的任務(wù) 41.1.2人事治理系統(tǒng)的意義 41.2B/S結(jié)構(gòu) 51.2.1Intranet的概念 51.2.2B/S(Browser/Server)模式的框架結(jié)構(gòu) 61.2.3B/S模式的系統(tǒng)流程 71.3B/S模式與C/S模式的比較 9第二章總體設(shè)計 102.1系統(tǒng)目標 102.2系統(tǒng)功能 102.3系統(tǒng)硬件結(jié)構(gòu) 112.4系統(tǒng)軟件結(jié)構(gòu) 12第三章ASP技術(shù) 133.1.1PHP技術(shù) 133.1.2JSP技術(shù) 143.1.3ASP技術(shù) 143.2.1關(guān)于ASP技術(shù) 153.2.2ASP對象 153.2.3ASP中請求和響應(yīng)的處理 163.2.4ASP應(yīng)用程序和會話 193.2.5文件系統(tǒng)的操作 22第四章數(shù)據(jù)庫訪問技術(shù) 24第五章功能介紹 305.1登錄本系統(tǒng) 305.2主窗口的構(gòu)成 305.3職員列表 315.4人力資源檔案 325.5考勤治理 335.6事項治理 345.7薪資治理 365.8輔助治理 38參考文獻 40附錄 41致謝 42摘要:隨著Internet技術(shù)的進展,人們的日常生活差不多離不開網(wǎng)絡(luò)。以后社會人們的生活和工作將越來越依靠于數(shù)字技術(shù)的進展,越來越數(shù)字化、網(wǎng)絡(luò)化、電子化、虛擬化。電子商務(wù)也隨著網(wǎng)絡(luò)的進展日益和人們的生活貼近。Internet的進展歷程以及目前的應(yīng)用狀況和進展趨勢,能夠充分地相信網(wǎng)絡(luò)技術(shù)將極大的改變我們的生活和工作方式,甚至社會的價值觀也會發(fā)生某種變化。本設(shè)計嘗試用ASP在網(wǎng)絡(luò)上架構(gòu)一個動態(tài)的人事治理系統(tǒng),它基于B/S結(jié)構(gòu)適用于不同的網(wǎng)絡(luò)環(huán)境和硬件環(huán)境,并能直接使用于互聯(lián)網(wǎng)環(huán)境,為各個職能部門互連互通提供了便捷的軟件平臺。關(guān)鍵字:Internet,ASP,電子商務(wù),人事治理系統(tǒng)Abstract:WiththeInternettechnology,people'sdailylifehasbeeninseparablefromthenetwork.Thefutureofthepeopleliveandworkwillbeincreasinglydependentondigitaltechnology,moreandmoredigital,network,electronic,andvirtualization.E-commerceisalsogrowingalongwiththedevelopmentofthenetworkandclosertopeople'slives.ThedevelopmentofInternetapplications,aswellasthecurrentsituationanddevelopmenttrend,youcanfullybelievethatnetworktechnologywillgreatlychangeourwayoflifeandwork,andevensocialvaluesalsohavesomekindofchange.TrytousethedesignoftheASPnetworkintheframeworkofadynamichumanresourcemanagementsystembasedonB/Sstructurefordifferentnetworkenvironmentandhardwareenvironment,andtobeabletodirecttheuseoftheInternetenvironmentforthevariousfunctionaldepartmentstoprovidetheinterconnectionConvenientsoftwareplatform.Keywords:Internet,ASP,e-commerce,humanresourcesmanagementsystem第一章緒論隨著計算機技術(shù)的飛速進展,計算機在企業(yè)治理中應(yīng)用的普及,利用計算機實現(xiàn)企業(yè)人力資源治理勢在必行。關(guān)于大中型企業(yè)來講,利用計算機支持企業(yè)高效率完成勞動人力資源治理的日常事務(wù),是適應(yīng)現(xiàn)代企業(yè)制度要求、推動企業(yè)勞動人力資源治理走向科學化、規(guī)范化的必要條件。該系統(tǒng)正是為了滿足現(xiàn)代化的要求而開發(fā)的針對人力資源治理的網(wǎng)絡(luò)辦公系統(tǒng)。它基于B/S結(jié)構(gòu)適用于不同的網(wǎng)絡(luò)環(huán)境和硬件環(huán)境,并能直接使用于互聯(lián)網(wǎng)環(huán)境,為各個職能部門互連互通提供了便捷的軟件平臺。1.1人事治理系統(tǒng)需求分析1.1.1人事治理系統(tǒng)的任務(wù)人們普遍使用計算機來提高個人工作效率,然而在需要許多人一起協(xié)同工作的現(xiàn)代工作環(huán)境中,我們更需要提高我們的整體工作效率。利用網(wǎng)絡(luò)通訊基礎(chǔ)及先進的網(wǎng)絡(luò)應(yīng)用平臺,建設(shè)一個安全、可靠、開放、高效的信息網(wǎng)絡(luò)和辦公自動化、信息治理電子化系統(tǒng),為治理部門提供現(xiàn)代化的日常辦公條件及豐富的綜合信息服務(wù),實現(xiàn)檔案治理自動化和辦公事務(wù)處理自動化,以提高辦公效率和治理水平,實現(xiàn)企業(yè)各部門日常業(yè)務(wù)工作的規(guī)范化、電子化、標準化,增強檔案部門文書檔案、人力資源檔案、科技檔案、財務(wù)等檔案的可治理性,實現(xiàn)信息的在線查詢、統(tǒng)計。最終實現(xiàn)“無紙”辦公。1.1.2人事治理系統(tǒng)的意義人事治理系統(tǒng)是一個企業(yè)單位不可缺少的部分,它的內(nèi)容關(guān)于企業(yè)的決策者和治理者來講都至關(guān)重要,因此人力資源勞資治理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式治理文件檔案,這種治理方式存在著許多缺點,如:效率低、保密性差,另外時刻一長,將產(chǎn)生大量的文件和數(shù)據(jù),這關(guān)于查找、更新和維護都帶來了許多的困難。隨著科學技術(shù)的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。作為計算機應(yīng)用的一部分,使用計算機對人力資源勞資信息進行治理,有著手工治理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高人力資源勞資治理的效率,也是企業(yè)的科學化、正規(guī)化治理,與世界接軌的重要條件。從微觀上講,建立一套人力資源治理信息系統(tǒng)能夠加快物資的周轉(zhuǎn)速度,提高生產(chǎn)效率,從而加強了治理的信息化手段,提高了本單位的經(jīng)濟效益。從宏觀上講,順應(yīng)了社會的信息化、社會化潮流,縮短了整個社會化大生產(chǎn)的周期。因此,開發(fā)如此一套治理軟件成為專門有必要的情況。1.2B/S結(jié)構(gòu)1.2.1Intranet的概念I(lǐng)nternet從80年代初誕生到今天,通過近二十年的時刻,差不多成為了信息時代的代表和寵兒。Internet的基礎(chǔ)是TCP/IP協(xié)議,為信息的共享、信息的交流。信息的整合帶來了極大的便利,近十年來,Internet的應(yīng)用得到了飛速進展。正是在如此的背景下,1994年“Intranet”這一術(shù)語首次出現(xiàn),代表著TCP/IP應(yīng)用技術(shù)向局域網(wǎng)的縱深擴展。在這之后的幾年里,許多企業(yè)、政府機構(gòu)紛紛建立自己的Intranet。TCP/IP給我們提供了不同平臺相互連接的可能性,同時提高連接的性能價格比。網(wǎng)絡(luò)為人們提供了一整套設(shè)備和設(shè)施,讓人們從網(wǎng)絡(luò)上獲得自己所需要的信息:我們不再依靠于某一專用的協(xié)議,而這些專用軟件使用戶受制于協(xié)議銷售商及其產(chǎn)品戰(zhàn)略。何謂Intranet?關(guān)于Intranet的定義,Attachmate的看法可供參:“使用由Internet擴展而來的技術(shù),將企業(yè)的組織結(jié)構(gòu)、Internet系統(tǒng)、工作組三者結(jié)合在一起的企業(yè)網(wǎng)絡(luò)基礎(chǔ)設(shè)施”[10]。Intranet的核心組成是TCP/IP協(xié)議組,在此協(xié)議組的支持之下,Intranet包括Web服務(wù)、FTP服務(wù)、電子郵件服務(wù)、遠程登錄服務(wù)等。而在這些服務(wù)中,最常使用的確實是Web服務(wù),Web服務(wù)具有直觀的操作界面,豐富多彩的多媒體輸出,便利的信息查詢方式。這些特點使人們樂于去使用它,因此極大的促進了Internet/Intranet的進展,也使基于Intranet的辦公自動化系統(tǒng)成為可能。由于Intranet采納的要緊是以TCP/IP協(xié)議為基礎(chǔ)的WebServer與Browser通訊的方式,因此本文以下將基于Intranet的辦公自動化系統(tǒng)與掃瞄器/服務(wù)器模式(Browser/Server)的辦公自動化系統(tǒng)作為同義詞。Web服務(wù)由三部分組成[11]:Web通訊協(xié)議組、Web服務(wù)器(WebServer)、掃瞄器(Browser),WebServer決定網(wǎng)絡(luò)服務(wù)器如何處理Intranet網(wǎng)絡(luò)上用戶的需求及該回傳哪些數(shù)據(jù)。它能處理任何操作系統(tǒng)及任何網(wǎng)絡(luò)上的工作,與之交換數(shù)據(jù)的能夠是使用Windows的PC,也能夠是NEC9901,可能是從同一個辦公室傳過來,也可能是來自另一個都市的網(wǎng)絡(luò)。Browser則從相應(yīng)的WebServer中取回數(shù)據(jù),并顯示給用戶。如此的Browser能夠是NetscapeCommunicator,也能夠是MicrosoftIE但需滿足一點,它們遵從Web通訊協(xié)議組。Web通訊協(xié)議組包括三種通訊標準,TCP/IP、HTTP(HypertextTransferProtocol超文本傳輸協(xié)議)和HTML(HypertextMarkedLanguage超文本標記語言),它們聯(lián)接WebServer與Browser。每種協(xié)議只在它自己的層次進行工作,三層的依靠關(guān)系是TCP/IP—HTTP—HTML,TCP/IP處于最低層,HTTP是Web服務(wù)器能夠理解的一種語言,因此Web服務(wù)器也被稱作HTTP服務(wù)器。HTML是文檔作者遵從的一個標準,也是掃瞄器顯示輸出的標準,在Web體系結(jié)構(gòu)中,TCP/IP、HTTP和HTML三者的協(xié)同關(guān)系如圖1-1所示:圖1-1TCP/IPHTTPHTML三種協(xié)議之間的關(guān)系1.2.2B/S(Browser/Server)模式的框架結(jié)構(gòu)圖1-2所示為掃瞄器/服務(wù)器模式(B/S)的層次結(jié)構(gòu)圖,整個系統(tǒng)分為三部分:掃瞄器端、Web服務(wù)器端、數(shù)據(jù)庫端。掃瞄器端包括[7]:(1)通用掃瞄器,如IE、Netscape,掃瞄器是客戶端所采納的要緊交互工具,在基于Intranet的辦公自動化系統(tǒng)中,用戶在掃瞄器端完成文件輸入、文件閱讀、文件處理、文件傳送等任務(wù)。掃瞄器支持HTML2.0以上版本,支持Java、JavaScript、ActiveX等對掃瞄器的擴充。(2)對SSL(SecureSocketsLayer安全套接字層)的支持(密匙認證)供傳輸加密,以最大限度的降低機密文件在傳輸過程中被竊密的可能性。Web服務(wù)器端包括:(1)Web服務(wù)器,如IIS、WebSite、NetscapeEnterpriseServer等。本文實現(xiàn)的系統(tǒng)采納Windows2000server平臺上的IIS5.0。(2)對SSL的支持(密匙認證和密匙治理)。(3)動態(tài)Web的實現(xiàn)機制——動態(tài)網(wǎng)頁擴展程序。如ActiveServerPages(ASP)程序、CGI程序、ISAPI。通過ASP程序,Web服務(wù)器端必須實現(xiàn)用戶認證、狀態(tài)保持、處理用戶輸入、讀取數(shù)據(jù)庫數(shù)據(jù)、產(chǎn)生動態(tài)輸出等功能。(4)與數(shù)據(jù)庫的接口。由于對數(shù)據(jù)庫的存取較大的阻礙系統(tǒng)響應(yīng)速度,因此數(shù)據(jù)庫的接口需要有一定的速度、效率。(5)防火墻設(shè)備。防火墻是Intranet與Internet相連接的安全屏障,保證只有授權(quán)的用戶才能從外界(Internet)訪問本地資源,只有通過許可的信息包才能向外界發(fā)送。圖1-2掃瞄器/服務(wù)器模式(B/S)的結(jié)構(gòu)層次1.2.3B/S模式的系統(tǒng)流程B/S模式的系統(tǒng)流程要緊是掃瞄器、Web服務(wù)器、數(shù)據(jù)庫服務(wù)器三者之間的相互作用。掃瞄器是整個流程的發(fā)起者,流程分支的選擇者;Web服務(wù)器是流程的操縱者,流程分支的提供者;數(shù)據(jù)庫服務(wù)器是流程數(shù)據(jù)的提供者,要緊信息的存儲、提供者。(1)登錄:掃瞄器首先向Web服務(wù)器發(fā)出進入治理系統(tǒng)的請求,Web服務(wù)器返回系統(tǒng)登錄Web頁面,要求用戶填寫用戶名、密碼。用戶填寫有關(guān)信息后遞交頁面。Web服務(wù)器啟動服務(wù)器端動態(tài)頁面擴展程序,向數(shù)據(jù)庫服務(wù)器證有用戶信息。動態(tài)頁面擴展程序證實后,向數(shù)據(jù)庫服務(wù)器讀取用戶文件,生成用戶首頁及用戶標識,然后Web服務(wù)器向掃瞄器返還此Web頁及用戶標識,如下圖1-3所示:圖1-3登錄流程(2)文件處理:掃瞄器從返還的Web頁中獲得文件列表,從中選擇所要處理的文件,向Web服務(wù)器發(fā)出文件:處理請求。服務(wù)器啟動相應(yīng)的動態(tài)頁面擴展程序檢查用戶合法性,向數(shù)據(jù)庫服務(wù)器讀取文件信息及相關(guān)數(shù)據(jù)資料,包括文件標題、內(nèi)容、處理表、后繼處理環(huán)節(jié)等,生成Web頁面,返還給掃瞄器。用戶在接到此頁面后可閱讀文什、批示、填寫處理意見等等。(3)文件后繼處理:用戶在處理完成之后,選擇后繼處理環(huán)節(jié)、后繼處理人,掃瞄器向Web服務(wù)器傳送處理結(jié)果。動態(tài)頁面擴展程序依照用戶處理惰況作相應(yīng)處理.并向數(shù)據(jù)庫寫入相應(yīng)信息,然后向掃瞄器返回處理結(jié)果。(4)退出登錄:掃瞄器向Web服務(wù)器發(fā)送退出請求,動態(tài)頁面擴展程序接到請求后,向數(shù)據(jù)庫服務(wù)器注銷用戶本次登錄的信息,記錄退出信息。在用戶發(fā)出退出請求往常,假如掃瞄器在一段時刻之內(nèi)沒有向服務(wù)器發(fā)出任何請求,則Web服務(wù)器認為用戶非正常退出,當用戶再次提出請求時,則需要輸入登錄信息。1.3B/S模式與C/S模式的比較C/S模式,即Client/Server(客戶機/服務(wù)器)模式,是大伙兒熟知的軟件系統(tǒng)體系結(jié)構(gòu),通過將任務(wù)合理分配到Client端和Server端,降低了系統(tǒng)的通訊開銷,能夠充分利用兩端硬件環(huán)境的優(yōu)勢。B/S模式是隨著Internet技術(shù)的興起,對C/S模式的一種變化或者改進的結(jié)構(gòu)。在這種結(jié)構(gòu)下用戶界面完全通過WWW掃瞄器實現(xiàn),一部分事務(wù)邏輯在前端實現(xiàn),然而要緊事務(wù)邏輯在服務(wù)器端實現(xiàn),形成所謂3-tier結(jié)構(gòu)。B/S結(jié)構(gòu)利用不斷成熟和普及的掃瞄器技術(shù)實現(xiàn)原來需要復(fù)雜專用軟件才能實現(xiàn)的強大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。這種結(jié)構(gòu)更成為當今應(yīng)用軟件的首選體系結(jié)構(gòu)。M也是在如此一種背景下被提出來的架構(gòu)[7]。目前大多數(shù)應(yīng)用軟件系統(tǒng)差不多上Client/Server形式的兩層結(jié)構(gòu),現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的Web應(yīng)用進展;內(nèi)部的和外部的用戶都能夠訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),Web和Client/Server應(yīng)用都能夠進行同樣的業(yè)務(wù)處理;不同的應(yīng)用模塊共享邏輯組件;通過現(xiàn)有應(yīng)用系統(tǒng)中的邏輯能夠擴展出新的應(yīng)用系統(tǒng)。這也確實是目前應(yīng)用系統(tǒng)的進展方向。傳統(tǒng)的C/S體系結(jié)構(gòu)盡管采納的是開放模式,但這只是系統(tǒng)開發(fā)一級的開放性,在特定的應(yīng)用中不管是Client端依舊Server端都還需要特定的軟件,沒能提供用戶真正期望的開放環(huán)境;B/S結(jié)構(gòu)則不同,它的前端是以TCP/IP協(xié)議為基礎(chǔ)的,公司內(nèi)的WWW服務(wù)器能夠同意安裝有Web掃瞄程序的Internet終端的訪問,作為最終用戶,只要通過Web掃瞄器,各種處理任務(wù)都能夠調(diào)用系統(tǒng)資源來完成,如此大大簡化了客戶端,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體擁有成本??傮w設(shè)計2.1系統(tǒng)目標人事治理系統(tǒng)以“數(shù)據(jù)共享”為基礎(chǔ),以“文件傳遞”為紐帶,用計算機和網(wǎng)絡(luò)將各個部門聯(lián)系起來,實現(xiàn)事務(wù)處理和信息傳遞自動化,從而提高各部門的辦公效率和業(yè)務(wù)處理能力,達到信息交流的目的。同時,考慮到用戶操作方便和數(shù)據(jù)共享的需要,采納掃瞄器/服務(wù)器方式,形成基于Intranet的軟件系統(tǒng)。人事治理系統(tǒng)將實現(xiàn)以下具體目標:(1)建立一個基于WWW服務(wù)的網(wǎng)絡(luò)平臺,用戶操作限于在掃瞄器上進行,系統(tǒng)架構(gòu)是基于Browser/Server模式。用戶客戶端不需安裝任何軟件,Windows系列操作系統(tǒng)附帶InternetExplorer即可。用戶即使操作不當也可不能給系統(tǒng)造成較大的破壞。(2)各個功能模塊之間連接緊密,幸免錯誤錄入。(3)系統(tǒng)的交互性好,用戶界面友好,操作方便。(4)系統(tǒng)可靠,安全、保密、靈活。(5)系統(tǒng)功能全面,能夠滿足中小企業(yè)的需求。2.2系統(tǒng)功能(1)人力資源治理功能:企業(yè)職員的個人信息和變動情況的治理;包括:錄入、修改、刪除、查詢、統(tǒng)計等操作;(2)考勤治理功能:對企業(yè)職員的出勤信息進行治理;包括:錄入、修改、查詢、統(tǒng)計等操作;(3)工資評定功能:對企業(yè)職員的工資待遇做出評定,并統(tǒng)計出結(jié)果;包括:錄入、修改、刪除、查詢、統(tǒng)計等操作;(4)事項治理功能:對職員的重要事項,如培訓、獎勵等進行錄入、查看等操作;(5)系統(tǒng)治理功能:對系統(tǒng)功能進行講明、對各個職能部門的治理、操作和修改密碼等功能。職員檔案新增職員檔案更改職員檔案職員檔案新增職員檔案更改職員檔案查看職員檔案辭退職員人事治理系統(tǒng)考勤記錄考勤記錄考勤統(tǒng)計考勤查詢薪資計算與發(fā)放工資治理工資發(fā)放工資查詢重要事項記錄培訓記錄獎懲記錄其他事項記錄系統(tǒng)治理部門治理公司差不多信息治理系統(tǒng)講明2.3系統(tǒng)硬件結(jié)構(gòu)圖2-1系統(tǒng)硬件結(jié)構(gòu)2.4系統(tǒng)軟件結(jié)構(gòu)圖2-2系統(tǒng)軟件結(jié)構(gòu)ASP技術(shù)該人事治理系統(tǒng)開發(fā)過程中使用的關(guān)鍵技術(shù)為動態(tài)網(wǎng)頁開發(fā)技術(shù),本章在下面將先介紹幾種動態(tài)網(wǎng)頁開發(fā)技術(shù)的比較,然后具體論述動態(tài)服務(wù)器網(wǎng)頁(ASP)技術(shù)的特性、對象的屬性及方法,文件系統(tǒng)的操作和組件的應(yīng)用等。

3.1幾種動態(tài)網(wǎng)頁開發(fā)技術(shù)的比較隨著Web的廣泛應(yīng)用,Web的開發(fā)技術(shù)也在不斷地進步。在客戶機方面,掃瞄器本身就包括為用戶開發(fā)更高級功能地程序邏輯,如JavaScript和VBScript。此外,還有嵌入式的軟件組件(Plug—ins),如JavaApplet,JavaBeans和ActiveXControls等。而服務(wù)器端,能夠提供各種各樣的強大的腳本運行環(huán)境,如CGI(CommandGatewayInterface)、ISAPI(InternetServerApplicationProgrammingInterface)、PHP(PersonalHomePage)、JSP(JavaServerPages)和ASP(ActiveServerPages)等。這為用戶開發(fā)動態(tài)網(wǎng)頁,公布實時和交互式信息提供了有力的技術(shù)支持。所謂動態(tài)網(wǎng)頁技術(shù)指一個用戶能夠?qū)⒁粋€HTTP請求發(fā)送到一個可執(zhí)行應(yīng)用程序而不是一個靜態(tài)的HTML文件。服務(wù)器將會立即運行那個限定的程序,對用戶的輸入做出反應(yīng),將處理結(jié)果返回客戶端,或者對數(shù)據(jù)的記錄進行更新。通過那個模型,就能夠在服務(wù)器和客戶之間有效的進行交互。早期的CGI技術(shù),開發(fā)人員使用CGI-BIN接口,編寫與接口相關(guān)的單獨的程序,以及基于Web的應(yīng)用程序,后者通過Web服務(wù)器來調(diào)用前者。那個方案有著嚴峻的擴展性問題——每個新的CGI要求在服務(wù)器上新增一個進程。假如多個用戶并發(fā)的訪問該程序,將消耗該Web服務(wù)器所有的可用資源,使系統(tǒng)性能降到極其低下的水平。為了解決這一問題,相應(yīng)的產(chǎn)生了ASP、PHP、JSP等技術(shù)。目前,最常用的動態(tài)網(wǎng)頁技術(shù)有PHP、JSP和ASP,下面分不予以介紹3.1.1PHP技術(shù)PHP是RasmusLerdorf推出的一種跨平臺的服務(wù)器端的嵌入式腳本語言,大量地借用C、Java和Perl語言的語法,并結(jié)合PHP自身的特性,使Web開發(fā)者能夠快速的寫出動態(tài)生成頁面。PHP是完全免費的,能夠自由下載。甚至能夠不受限制的獲得源代碼,從而加進自己的特色。PHP支持目前絕大多數(shù)的數(shù)據(jù)庫,具有許多與各類數(shù)據(jù)庫連接的函數(shù)。它與MySQL是一對絕佳的組合,此外還能夠自己編寫外圍的函數(shù)間接存取數(shù)據(jù)庫。當更換數(shù)據(jù)庫時,能夠輕松的更改編碼以適應(yīng)如此的變化。PHPLIB確實是最常用的能夠提供一般事務(wù)需要的一系列基庫,然而,PHP提供的數(shù)據(jù)庫接口支持不統(tǒng)一,如對Oracle、MySQL和Sybase的接口,彼此都不一樣。這是PHP的一個弱點。3.1.2JSP技術(shù)JSP是Sun公司推出的新一代站點開發(fā)語言,它能夠在Servle和JavaBeans/EJB/CORBA/JNDI等的支持下,構(gòu)建功能強大的信息服務(wù)應(yīng)用平臺。JSP最大特點是將內(nèi)容的生成和顯示進行分離。使用JSP技術(shù),Web頁面開發(fā)人員能夠使用HTML或者XML標記來設(shè)計和格式化最終頁面,用JSP來生成頁面上的動態(tài)內(nèi)容。在服務(wù)器端,JSP引擎解釋JSP標記和小腳本,生成所請求的內(nèi)容,同時將結(jié)果以HTML或者XML頁面的形式發(fā)送回掃瞄器。這有助于作者愛護自己的代碼,而又保證任何基于HTML的Web掃瞄器完全可用。由于JSP頁而的內(nèi)置腳本浯言是基于Java編程語言的,擁有Java編程語言“一次編寫,各處運行”的特點,而且所有的JSP頁面差不多上被編譯成為JavaServletClass,JSP頁面就具有Java技術(shù)的所有好處,包括健壯的存儲治理和安全性。3.1.3ASP技術(shù)ASP是微軟公司公布的一個Web服務(wù)器端的開發(fā)環(huán)境,利用它能夠產(chǎn)生和運行動態(tài)的、交互的、高性能的Web服務(wù)應(yīng)用程序。它內(nèi)含于MicrosoftInternetInformationServer(IIS)當中,無需Compile(編譯)或Link(鏈接)即可解釋執(zhí)行。它的源代碼可不能傳到用戶的掃瞄器,傳到用戶掃瞄器的是ASP執(zhí)行結(jié)果的常規(guī)HTML碼。當運行的時候,Web服務(wù)器(IIS3.0/4.0/5.0、MicrosoftSiteServer2.0)會自動將你設(shè)計的ASP程序代碼解釋為標準的HTML格式的主頁內(nèi)容,在用戶端的掃瞄器上顯示出來。用戶端只要使用常規(guī)的可執(zhí)行HTML碼的掃瞄器即可掃瞄。此外,它還能夠通過ActiveX服務(wù)器組件(ActiveXServerComponent)來擴充功能。目前,國內(nèi)PHP與ASP應(yīng)用廣泛.然而在國外,JSP是比較流行的一種技術(shù),尤其是電子商務(wù)類網(wǎng)站,PHP技術(shù)存在專門多缺點,它缺乏規(guī)模支持和多層結(jié)構(gòu)支持。還有上面提到的PHP提供的數(shù)據(jù)庫接口支持不統(tǒng)一問題。ASP和JSP則沒有以上的缺陷,ASP能夠通過MicrosoftWindows的COM/DCOM獲得ActiveX規(guī)模支持,通過DCOM和MicrosoftTransactionServer獲得結(jié)構(gòu)支持.同時ASP具有易學性強、運行速度較快、擴展性好、支持分布式處理等特點,結(jié)合內(nèi)部局域網(wǎng)硬件與軟件實際情況,開發(fā)人事治理系統(tǒng)我們采納ASP技術(shù)進行設(shè)計。3.2動態(tài)服務(wù)器網(wǎng)頁(ASP)技術(shù)3.2.1關(guān)于ASP技術(shù)ASP是一項由微軟開發(fā)的服務(wù)器端技術(shù),它并不是一種開發(fā)語言,而是一種基于IIS的服務(wù)器端的編程環(huán)境,或者講ASP是集成IIS上的一個增強部件。在ASP環(huán)境下,能夠把HTML文檔、腳本語言和ActiveX控件混合在一個.asp文件中。ASP支持多種腳本語言,在不特不聲明的情況下,ASP缺省支持VBScript,假如使用其它腳本語言則需要在程序中進行聲明,ASP腳本命令的標記為<%%>,它能夠靈活的嵌入到HTML文檔的任何位置.當用戶請求一個ASP頁面時,服務(wù)器響應(yīng)請求并解釋被請求的ASP頁面,當遇到腳本命令時,則調(diào)用相應(yīng)的腳本引擎進行處理,并在服務(wù)器端解釋執(zhí)行,然后依照訪問數(shù)據(jù)庫的結(jié)果生成HTML文檔,在客戶端的掃瞄器中公布[9]。ASP中通過ADO(ActiveXDataObject,ActiveX數(shù)據(jù)對象)技術(shù)與數(shù)據(jù)庫進行連接,ADO是ActiveX組件中的數(shù)據(jù)庫訪問組件。ADO提供了Connection、Command、Recordset等對象,能夠使服務(wù)器方便的連接和操縱Web數(shù)據(jù)庫。ADO具有簡單易用、高速、占用資源少等特點。這在下一章中將詳細論述。ASP還捆綁了一些服務(wù)器組件(ServerComponent),利用ASP自帶的服務(wù)器組件能夠?qū)iT方便的建立服務(wù)器連接,從而依照相應(yīng)的服務(wù)器連接訪問數(shù)據(jù)庫,進行文件操作等,ASP最常用的兩個服務(wù)器組件是數(shù)據(jù)庫訪問組件(DataAccessComponent)和文件訪問組件(FileAccessComponent)。支持ASP的Web服務(wù)器有以下幾種:1)WindowsNTServer4.0中的IIS3.0版以上;2)WindowsNTWorkstation4.0中的PeerWebServer3.0版以上;3)Windows9X中的PersonalWebServer1.0版以上。3.2.2ASP對象ActiveServerPages包含幾種內(nèi)置對象。這些對象使用戶可擴展腳本功能。例如可用這些對象訪問掃瞄器請求并操縱對請求的響應(yīng)。內(nèi)置對象還提供操縱用戶區(qū)和網(wǎng)絡(luò)服務(wù)器的應(yīng)用程序。ASP中包含的內(nèi)置對象要緊有:(1)Application對象——用來存儲、讀取用戶共享的應(yīng)用程序信息,如能夠用此對象在網(wǎng)站的用戶間傳送信息。(2)Request對象——可用來訪問從掃瞄器發(fā)送到服務(wù)器的請求信息,可用此對象讀取已輸入HTML表單的信息,(3)Response對象——用來向掃瞄器回發(fā)信息,可用此對象從腳本向掃瞄器發(fā)送輸出。(4)Server對象——可在服務(wù)器上使用不同實體函數(shù),如在時刻到達前操縱腳本執(zhí)行的時刻。還可用來創(chuàng)建其他對象。(5)Session對象——存儲、讀取特定用戶對話信息,如可存儲用戶對網(wǎng)站的訪問信息。(6)ObjectContext對象——操縱ActiveServerPages的事務(wù):事務(wù)由MicrosoftTransactionServer(MTS)治理。內(nèi)置對象與一般對象不同。在腳本中使用內(nèi)置對象前不必創(chuàng)建。在網(wǎng)站應(yīng)用程序中,方法、集和屬性可自動訪問。3.2.3ASP中請求和響應(yīng)的處理在ASP中能夠應(yīng)用客戶請求和服務(wù)器響應(yīng)的細節(jié)是通過ASP內(nèi)置的Request和Response對象來實現(xiàn)的。Request對象為腳本提供了當客戶端請求一個頁面或者傳遞一個窗體時,客戶端提供的全部信息。這包括能指明掃瞄器和用戶的HTTP變量,在那個域名下存放在掃瞄器中的cookie,任何作為查詢字符串而附于URL后面的字符串或頁面的<FORM>段中的HTML控件的值。也提供使用SecureSocketLayer(SSL)或其他加密通信協(xié)議的授權(quán)訪問,及有助于對連接進行治理的屬性。Response對象用來訪問服務(wù)器端所創(chuàng)建的并發(fā)回到客戶端的響應(yīng)信息。為腳本提供HTTP變量,指明服務(wù)器和服務(wù)器的功能和關(guān)于發(fā)回掃瞄器的內(nèi)容的信息以及任何將為那個域而存放在掃瞄器里新的Cookie。它也提供了一系列的方法用來創(chuàng)建輸出,例如無處不在的Response.Write方法。Request對象提供了5個集合,能夠用來訪問客戶端對Web服務(wù)器請求的各類信息,這些集合如表3-1所示。表3-1request對象的集合及講明集合名稱講明ClientCertificate當客戶端訪問一個頁面或其他資源時,用來向服務(wù)器表明身份的客戶證書的所有字段或條目的數(shù)值集合,每個成員均是只讀Cookies依照用戶的請求,用戶系統(tǒng)發(fā)出的所有Cookie的值的集合,這些Cookie僅對相應(yīng)的域有效,每個成員均為只讀FormMETHOD的屬性值為POST時,所有作為請求提交的<FORM>段中的HTML控件單元的值的集合,每個成員均為只讀QueryString依附于用戶請求的URL后面的名稱/數(shù)值對或者作為請求提交的且METHOD屬性值為GET(或者省略其屬性)的,或<FORM>中所有HTML控件單元的值,每個成員均為只讀ServerVariables隨同客戶端請求發(fā)出的HTTP報頭值,以及Web服務(wù)器的幾種環(huán)境變量的值的集合,每個成員都為只讀Response的屬性有:1)Buffer屬性Buffer屬性指示是否緩沖頁輸出。當緩沖頁輸出時,只有當前頁的所有服務(wù)器腳本處理完畢或者調(diào)用了Flush或End方法后,服務(wù)器才將響應(yīng)發(fā)送給客戶端掃瞄器,服務(wù)器將輸動身送給客戶端掃瞄器后就不能再設(shè)置Buffer屬性。因此應(yīng)該在.asp文件的第一行調(diào)用Response.Buffer。2)Charset屬性Charset屬性將字符集名稱附加到Response對象中content-type標題的后面。關(guān)于不包含Response.Charset屬性的ASP頁,content-type標題將為:content-type:text/html。3)ContentType屬性ContentType屬性指定服務(wù)器響應(yīng)的HTTP內(nèi)容類型。假如未指定ContentType,默認為text/HTML。4)Expires屬性Expires屬性指定了在掃瞄器上緩沖存儲的頁距過期還有多少時刻。假如用戶在某個頁過期之前又回到此頁,就會顯示緩沖區(qū)中的頁面。假如設(shè)置response.expires=0,則可使緩存的頁面立即過期。這是一個較有用的屬性,當客戶通過ASP的登錄頁面進入WEB站點后,應(yīng)該利用該屬性使登錄頁面立即過期,以確保安全。5)ExpiresAbsolute屬性與Expires屬性不同ExpiresAbsolute屬性指定緩存于掃瞄器中的頁面的確切到期日期和時刻。在未到期之前,若用戶返回到該頁,該緩存中的頁面就顯示。假如末指定時刻,該主頁在當天午夜到期。6)IsClientConnected屬性lsClientConnected屬性告訴你訪問者是否還在連接著你的站點。7)PICS屬性PICS屬性同意你給相應(yīng)光標上添加一個PICSLABEL。8)Satutus屬性Satutus屬性,它同意你設(shè)置返回的狀態(tài)頭標。Response的方法有:1)Clear能夠用Clear方法清除緩沖區(qū)中的所有HTML輸出。但Clear方法只清除響應(yīng)正文而不清除響應(yīng)標題。能夠用該方法處理錯誤情況。2)EndEnd方法使Web服務(wù)器停止處理腳本井返回當前結(jié)果。文件中剩余的內(nèi)容將不被處理。假如Response.Buffer己設(shè)置為TRUE,則調(diào)用Response.End將緩沖輸出。3)FlushFlush方法立即發(fā)送緩沖區(qū)中的輸出。假如沒有將Response.Buffer設(shè)置為TRUE,則該方法將導致運行時錯誤。4)RedirectRedirect方法使掃瞄器立即重定向到程序指定的URL。這也是一個我們經(jīng)常用到的方法,如此程序員就能夠依照客戶的不同響應(yīng),為不同的客戶指定不同的頁面或依照不同的情況指定不同的頁面。一旦使用了Redirect方法任何在頁中顯式設(shè)置的響應(yīng)正文內(nèi)容都將被忽略。5)WriteWrite方法是我們平常最常用的方法之一,它是將指定的字符串寫到當前的HTTP輸出。6)AddHeader方法你能夠使用AddHeader方法來向輸出的HTML頁面添加自定義的頭標。7)AppendToLog方法便捷的AppendToLog方法同意你在WEB服務(wù)器的日志中為特定的請求增加一個文本。該文本最多能夠包含80個字符,同時其中不能包含逗號。8)BinaryWrite方法BinaryWrite方法同意你給掃瞄器發(fā)送非文本的原始二進制信息,那個方法的格式如下:Response.BinaryWriteDateToWrite,在那個地點DateToWrite變量包含了你要發(fā)送到掃瞄器的二進制的信息。一般用那個方法來傳送聲音、圖像、可執(zhí)行文件、壓縮文件等。Response對象只有一個集合:Cookie,Cookies集合設(shè)置cookie的值。若指定的cookie不存在,則創(chuàng)建它。若存在,則設(shè)置新的值同時將舊值刪去。3.2.4ASP應(yīng)用程序和會話ASP提供一個Application對象,該對象是全局的,不是對單獨用戶的,而是對應(yīng)用程序的所有用戶,其作用域不限制為單獨用戶的訪問。這與在一個正常的可執(zhí)行應(yīng)用程序中的全局(或Public)變量相同。Application對象可用于在全局環(huán)境中存儲變量和信息(即狀態(tài)),該應(yīng)用程序內(nèi)的任何ASP網(wǎng)頁中運行的腳本都可訪問這些值,而不管是哪個訪問者發(fā)出的請求。啟動一個ASP應(yīng)用程序,就同時創(chuàng)建了一個Application對象。然后,為那個用戶啟動一個會話,并創(chuàng)建單獨的Session對象。當更多的會話啟動時,那個Application對象保留在作用域中(即差不多實例化和可用)。一旦最后保持活動的會話結(jié)束,該應(yīng)用程序就結(jié)束,并取消相應(yīng)的Application對象。因此,當站點上還有活動會話時,將會有一個單獨的Application對象提供給所有用戶使用。Application對象的事件有:(1)Application_OnStartApplication_OnStart事件在首次創(chuàng)建新的會話(即SessionOnStart事件)之前發(fā)。當WEB服務(wù)器啟動并同意對應(yīng)用程序所包含的文件進行請求時就觸發(fā)Application_OnStart事件。Application_OnStart事件的處理過程必須寫在Global.asa文件之中。Application_OnStart事件的語法如下:<SCRIPTLANGUAGE=ScriptLanguageRUNAT=Server>SubApplication_OnStartEndSub</SCRIPT>(2)Application_OnEndApplication_OnEnd事件在應(yīng)用程序退出時于Session_OnEnd事件之后發(fā)生,Applicatlon_OnEnd事件的處理過程也必須寫在global.asa文件之中。我們能夠使用Session對象存儲特定的用戶會話所需的信息。當用戶在應(yīng)用程序的頁之間跳轉(zhuǎn)時,存儲在Session對象中的變量可不能清除,而用戶在應(yīng)用程序中訪問頁畫時,這些變量始終存在。當用戶請求來自應(yīng)用程序的Web頁時,假如該用戶還沒有會話,則Web服務(wù)器將自動創(chuàng)建一個Session對象。當會話過期或被放棄后,務(wù)器將終止該會話。通過向客戶程序發(fā)送唯一的Cookie能夠治理服務(wù)器上的Session對象。當用戶第一次請求ASP應(yīng)用程序中的某個頁面時,ASP要檢查HTTP頭信息,查看是否有在報文中有名為ASPSESSIONID的Cookie發(fā)送過來,假如有,則服務(wù)器會啟動新的會話,并為該會話生成一個全局唯一的值,在把那個值作為新ASPSESSIONIDCookie的值發(fā)送給客戶端,正是使用這種Cookie,能夠訪問存儲在服務(wù)器上的屬于客戶程序的信息。Session對象最常見的作用確實是存儲用戶的首選項。例如,假如用戶指明不喜愛查看圖形,就能夠?qū)⒃撔畔⒋鎯υ赟ession對象中。另外其還經(jīng)常被用在鑒不客戶身份的程序中。要注意的是,會話狀態(tài)僅在支持cookie的掃瞄器中保留,假如客戶關(guān)閉了Cookie選項,Session也就不能發(fā)揮作用了。Session對象的屬性有:(1)SessionlDSessionID屬性返回用戶的會話標識。在創(chuàng)建會話時,服務(wù)器會為每一個會話生成一個單獨的標識。會話標識以長整形數(shù)據(jù)類型返回。在專門多情況下SessionID能夠用于WEB頁面注冊統(tǒng)計。(2)TimeOutTimeOut屬性以分鐘為單位為該應(yīng)用程序的Session對象指定超時時限。假如用戶在該超時時限之內(nèi)不刷新或請求網(wǎng)頁,則該會話將終止。Session對象僅有一個方法,確實是Abandon,Abandon方法刪除所有存儲在Session對象中的對象并釋放這些對象的源。假如您未明確地調(diào)用Abandon方法,一旦會話超時,服務(wù)器將刪除這些對象.當服務(wù)器處理完當前頁時,下面示例將釋放會話狀態(tài)。<%Session.Abandon%>Session對象有兩個事件可用于在Session對象啟動和釋放時運行過程。(1)Session_OnStart事件在服務(wù)器創(chuàng)建新會話時發(fā)生。服務(wù)器在執(zhí)行請求的頁之前先處理該腳本。Session_OnStart事件是設(shè)置會話期變量的最佳時機,因為在訪問任何頁之前都會先設(shè)置它們。盡管在Session_OnStart事件包含Redirect或End方法調(diào)用的情況下對象仍會保持,然而服務(wù)器將停止處理Global.asa文件并觸發(fā)Session_OnStart事件的文件中的腳本。為了確保用戶在打開某個特定的Web頁時始終啟動一個會話,就能夠在Session_OnStart事件中調(diào)用Redirct方法,當用戶進入應(yīng)用程序時,服務(wù)器將為用戶創(chuàng)建一個會話并處理Session_OnStart事件腳本。您能夠?qū)⒛_本包含在事什中以便檢查用戶打開的頁是不是啟動頁,假如不是,就指示用戶調(diào)用Response.Redirect方法啟動網(wǎng)頁。(2)SessionOnEnd事件在會話被放棄或超時發(fā)生。會話能夠通過以下三種方式啟動:(1)一個新剛產(chǎn)請求訪問一個URL,該URL標識了某個應(yīng)用程序中的.asp文件,同時該應(yīng)用程序的Global.asa文件包含Session_OnStart過程。(2)用戶在Session對象中存儲了一個值。(3)用戶請求了一個應(yīng)用程序的.asp文件,同時該應(yīng)用程序的Global.asa文件使用<OBJECT>標簽創(chuàng)建帶有會話作用域的對象的實例。假如用戶在指定時刻內(nèi)沒有清求或刷新應(yīng)用程序中的任何頁,會話將自動結(jié)束。這段時刻的默認值是20分鐘??赏ㄟ^在Internet服務(wù)治理器中設(shè)置“應(yīng)用程序選項”屬性頁中的“會話超時”屬性改變應(yīng)用程序的默認超時限制設(shè)置。依據(jù)您的Web應(yīng)用程序的要求和服務(wù)器的內(nèi)存空間來設(shè)置此值。例如,假如您希望掃瞄您的web應(yīng)用程序的用戶在每一頁僅停留幾分鐘,就應(yīng)該縮短會話的默認超時值。過長的會話超時值將導致打開的會話過多而耗盡您的服務(wù)器的內(nèi)存資源。關(guān)于一個特定的會話,假如您想設(shè)置一個小于默認超時值的超時值,能夠設(shè)置Session對象的Timeout屬性。例如,下面這段腳本將超時值設(shè)置為10分鐘。<%Session.Timeout=10%>因此你也能夠設(shè)置一個大于默認設(shè)置的超時值,Session.Timeout屬性決定超時值,你還能夠通過Session對象的Abandon方法顯式結(jié)束一個會話。3.2.5文件系統(tǒng)的操作ActiveServerPages包含文件處理的豐富的方法、屬性和集。使用ActiveServerPages腳本,幾乎能夠完全操縱文件系統(tǒng)的每一個方面。處理文件時可使用FileAccess組件。該組件用到下列對象;(1)FileSystemObject——包含了處理文件系統(tǒng)的所有差不多方法。例如,可用此對象中的方法來復(fù)制或刪除文件和文件夾。(2)TextStream——用來讀寫文本文件。(3)File——此對象的方法和屬性能夠處理單個文件。例如,用該對象搜索文件最后一次被修改的日期或文件路徑。(4)Folder——該對象的方法和屬性可用以處理文件夾。(5)Drive——代表磁盤驅(qū)動器或網(wǎng)絡(luò)共享。能夠用該對象的屬性取得信息,如磁盤可用空間或磁盤上正在使用的文件系統(tǒng)類型。FileAccessComponent也有3個集。(1)Files集——在文件夾中代表一系列文件。(2)Folder集——該集中的各項代表一個文件夾中的各子文件夾。(3)Drive集——代表服務(wù)器上的驅(qū)動器或遠程網(wǎng)絡(luò)供銷。以文件的讀寫舉例來講明ASP中文件的操作過程,要創(chuàng)建文本文件并對其進行寫操作,能夠用FileSystemObject和Textstream對象,首先要創(chuàng)建一個FilesystemObject的實例,調(diào)用FilesystemObject的CreateTexcFile()方法返回一個TextStream對象實例。最后,用TextStream對象的WriteLine()方法將數(shù)據(jù)寫入文件中。下面是例子:<html><head><title>WriteFile</title></head><body>Writingfile...<%SetMyFileObject=Server.CreateObject("Scripting.FileSystemObjec")SetMyTextFile=MyFileObject.CreatTextFile("c:\mydir\test.txt")MyTextFile.WriteLine("HelloThere!")MyTextFile.Close%></body></html>那個例子創(chuàng)建了一個名為test.txt的文件,路徑為c:\mydir\test.txt。WriteLine()方法將“HelloThere!”送入文件中,最后,TextStream對象實例關(guān)閉,以保存系統(tǒng)資源。第四章數(shù)據(jù)庫訪問技術(shù)為屏蔽各種RDBMS對程序員的特有細節(jié),提供訪問它們的一致接口,各種數(shù)據(jù)訪問技術(shù)應(yīng)運而生。Microsoft先后推出了ODBC、DAO、RDO、OLEDB及ADO。數(shù)據(jù)訪問技術(shù)已從最初的只能訪問關(guān)系數(shù)據(jù)庫進展到日前能訪問包括關(guān)系數(shù)據(jù)庫在內(nèi)的各種數(shù)據(jù)源,如電子表格、電子郵件、文件目錄、文本文件等,且性能、功能、易用性都得到逐步提高。(1)開放數(shù)據(jù)庫連接(ODBC)ODBC(OpenDatabaseConnectivity)是Microsoft在80年代末90年代初開發(fā)的,目的是提供各種RDBMS的統(tǒng)一接口,是將程序員與開發(fā)數(shù)據(jù)庫應(yīng)用程序的復(fù)雜性相隔離的第一個嘗試.針對市場上存在多種SQL版本的情況,ODBC提供了單一的SQL,即ODBCSQL,由ODBC驅(qū)動程序中的APl負責將ODBCSQL翻譯成具體數(shù)據(jù)庫使用的SQL,從而實現(xiàn)對各種RDBMS的統(tǒng)一訪問。ODBC的體系結(jié)構(gòu)如圖4-1所示,其核心是ODBC驅(qū)動程序。為進一步減輕應(yīng)用程序開發(fā)的負擔,ODBC提供了—個ODBC驅(qū)動程序治理器(ODBCDriverManager),用于接收來自應(yīng)用程序的請求,治理驅(qū)動程程序通常完成如下工作:①連接數(shù)據(jù)源,與數(shù)據(jù)源斷開連接;②執(zhí)行驅(qū)動程序治理器所沒有進行的錯誤檢杳;③事務(wù)處理;④提交SQL語句,包括把ODBCSQL轉(zhuǎn)換為所支持的數(shù)據(jù)庫SQL;⑤處理數(shù)據(jù),“數(shù)據(jù)源”即是具體數(shù)據(jù)庫的連接定義。圖4-1ODBC體系結(jié)構(gòu)圖目前ODBC已成為數(shù)據(jù)庫訪問的工業(yè)標準,幾乎所有RDBMS都有ODBC驅(qū)動程序。程序員可通過加載ODBC驅(qū)動程序訪問任何一個RDBMS?,F(xiàn)在ODBC支持事務(wù)處理和異步執(zhí)行等高級數(shù)據(jù)庫功能。由于基于底層APl,因此又具有高效靈活、速度快的優(yōu)點。此外,ODBC依舊訪問RDBMS數(shù)據(jù)時應(yīng)用最廣的技術(shù),因為它兼容性強。適用于訪問關(guān)系型數(shù)據(jù)源。(2)數(shù)據(jù)訪問對象(DAO)DAO(DataAccessObject)基于OLE自治對象,實現(xiàn)了將面向?qū)ο缶幊陶Z言的面向?qū)ο筇攸c更好的與數(shù)據(jù)庫的關(guān)系特點相結(jié)合。從而為數(shù)據(jù)庫訪問提供了一組基于對象的接口。從內(nèi)部看,ODBC和DAO差不多上基于C的API,但DAO與ODBC不同,DAO為數(shù)據(jù)庫訪問提供了一個基于對象的接口,因此DAO依靠于對象,而不是函數(shù)來提供數(shù)據(jù)訪問。DAO的體系結(jié)構(gòu)如圖4-2所示:圖4-2DAO的體系結(jié)構(gòu)由上圖可知,DAOAPI的核心是DAO自治服務(wù)器和Jet引擎。與ODBC相比,DAOAPI不能提供ODBCAPl所提供的底層操縱,屬于高層API。(3)遠程數(shù)據(jù)對象(RDO)RDO(RemoteDataObject)是Microsoft針對DAOAPl訪問ODBC數(shù)據(jù)源性能不佳而推出的,它是專門為ODBC的接口單獨設(shè)計,可視為ODBCAPI的抽象,它通過ODBC提供了一個簡單且高效的連接驅(qū)動程序的用戶界面,RDO創(chuàng)立了一個往常只能由c++之類的系統(tǒng)級編程語言才能使用的低級編程界面的快速界面。RDO同DAO在對象模型上相似,因為數(shù)據(jù)庫訪問提供基于對象的易于編程的接口。RDO提供了緊湊、輕量級的到ODBC的基于對象的接口。這些接口提供所有ODBCAPl擁有的低層功能和靈活性,并去掉了DAO中的Jet引擎層,不像DAO那樣通過Jet引擎調(diào)用ODBCAPl,RDO是直接調(diào)用ODBCAPI,因此關(guān)于訪問ODBC數(shù)據(jù)源具有專門好的性能。正因為RDO去掉了Jet引擎層,因此存在明顯的局限性,即它不能訪問Jet和ISAM數(shù)據(jù)庫文件,而只能通過ODBC驅(qū)動程序訪問關(guān)系數(shù)據(jù)庫。但RDO提供了更為先進的數(shù)據(jù)庫功能,通過提供對象、方法、屬性,RDO能夠訪問特不復(fù)雜的存儲過程和記錄集。(4)對象連接與嵌入數(shù)據(jù)庫(OLEDB)OLEDB(OLEDatabase)是關(guān)于Microsoft統(tǒng)一數(shù)據(jù)訪問(UniversalDataAccess,UDA)機制的一組規(guī)范,OLEDB創(chuàng)建了一組基于COM的接口規(guī)范,它把傳統(tǒng)關(guān)系數(shù)據(jù)源與來自平面文件系統(tǒng)到電子郵件系統(tǒng)的其它數(shù)據(jù)源統(tǒng)一起來。OLEDB提供了對許多不同數(shù)據(jù)源進行訪問的共同接口。OLEDB的體系結(jié)構(gòu)見圖4-3:圖4-3OLEDB與ADO的體系結(jié)構(gòu)OLEDB繼承了ODBC的許多思想方法,同屬于底層API。但由于OLEDB提供了基于COM的接口,故為數(shù)據(jù)庫客戶應(yīng)用程序的開發(fā)提供了面向?qū)ο蟮姆椒ǎ鳲DBC采納的是基于函數(shù)的API方法。OLEDB的優(yōu)點是開發(fā)數(shù)據(jù)提供者簡單,能訪問各類型數(shù)據(jù)源,提供的COM接門是一致、可伸縮的,可用這種一致的接口檢索往常不能以編程一致的方式訪問的信息,具有對所有應(yīng)用程序開放機構(gòu)中的所有信息的潛能。OLEDB的缺點是屬于低層API,結(jié)構(gòu)復(fù)雜,應(yīng)用它進行應(yīng)用程序開發(fā)會特不困難,但OLEDB功能強大、靈活性高、性能穩(wěn)定、健壯性、可擴展性好;代表了Microsoft下一代數(shù)據(jù)訪問技術(shù)的進展方向。日前OLEDB還不能取代ODBC,因許多數(shù)據(jù)庫的OLEDB數(shù)據(jù)提供者還未開發(fā)出來,由OLEDB訪問這些數(shù)據(jù)庫還必須通過OLEDBODEIC數(shù)據(jù)提供者。當前OLEDB的研究和開發(fā)熱點已轉(zhuǎn)到OLEDB數(shù)據(jù)提供者和OLEDB服務(wù)提供者上。(5)ActiveX數(shù)據(jù)對象(ADO)ADO(ActiveXDataObject)是建立在OLEDB基礎(chǔ)之上的基于對象的高層數(shù)據(jù)庫API,ADO通過封裝在低層OLEDB功能中的不同對象、方法和屬性以提供高層接口。ADO還基于ActiveX標準,因此它的可擴展性專門強,適應(yīng)于在Internet上的應(yīng)用。使用ADO的應(yīng)用程序都需要間接的訪問OLEDB組件,ADO提供了基于OLEDB的通用數(shù)據(jù)訪問功能。從許多方面來看,ADO差不多上當今最好的基于對象的數(shù)據(jù)庫接口:短小精干、易學易用、功能強大、能夠訪問任何類型的數(shù)據(jù),Microsoft已把ADO定為在各種技術(shù)條件下的標準訪問方法,ADO可用于IIS,VBA,VB,VBScript,VC,VJ和幾乎所有的編程壞境中,在這些開發(fā)環(huán)境中訪問數(shù)據(jù)庫的過程差不多上標準的[13]。ADO由一系列對象組成,它們極大簡化了數(shù)據(jù)庫應(yīng)用程序的開發(fā)工作,使用ADO執(zhí)行常用的數(shù)據(jù)庫操作,如連接數(shù)據(jù)庫和檢索記錄集將特不簡便易行,圖為ADO對象模型。圖4-4ADO的對象模型由圖4-4可知,ADO對象模型中要緊是Connection,Command,Recordset三個對象。Connection表示與數(shù)據(jù)源的連接,提供治理連接和事務(wù)處理的方法;Command用于針對特定的數(shù)據(jù)庫連接執(zhí)行存儲過程和參數(shù)化查詢;Recordset封裝SQL語句執(zhí)行的結(jié)果集,其中包含大量的數(shù)據(jù)操作游標,其它的對象則提供了附加的操縱功能。與DAO,RDO不同,ADO中的對象沒有嚴格的層次結(jié)構(gòu),如連接、命令、記錄集對象可先后創(chuàng)建,再把它們關(guān)聯(lián)在——起,也能夠單獨創(chuàng)建,ADO并不要求創(chuàng)建記錄集之前必須創(chuàng)建連接對象,這給了編程人員極大的靈活性。圖4-5各數(shù)據(jù)庫接口之間的關(guān)系從上面的分析和比較中可概括出,ODBC和OLEDB差不多上低層API,是系統(tǒng)級調(diào)用,擁有性能和靈活性上的優(yōu)勢,但編程困難,難以使用。DAO(RDO)和ADO差不多上高層APl,是應(yīng)用級調(diào)用,它們都提供了數(shù)據(jù)庫編程的對象模型,編程簡單、高效,但性能和底層操縱功能有所損失。OLEDB可作為ODBC的超集,但二者擁有完全不同的體系結(jié)構(gòu),ODBC是傳統(tǒng)的過程調(diào)用API,而OLEDB則是基于COM,因此具有更靈活的、更健壯的基礎(chǔ)。DAO封裝對Jet數(shù)據(jù)庫的訪問,RDO封裝對ODBC數(shù)據(jù)源的訪問,ADO則封裝對任何類型數(shù)據(jù)源的訪問,ADO是DAO、RDO的超集,它擁有DAO、RDO所有的功能,升包含了許多新功能。OLEDB和ADO已成為Windows平臺上數(shù)據(jù)訪問技術(shù)的以后進展模型,Microsoft已把自己的開發(fā)努力集中在了OLEDB和ADO上。ADO具有速度高、使用簡單、對象層次簡單、低開銷、低磁盤空間要求等優(yōu)點。它具有的小內(nèi)存用量和高性能使它特不適合于網(wǎng)絡(luò)開發(fā)。本章著重要討論的確實是在ASP中用ADO與數(shù)據(jù)庫通信。

第五章功能介紹一般用戶或系統(tǒng)治理員登錄后,就會在響應(yīng)的菜單中顯示各種功能選項。5.1登錄本系統(tǒng)啟動本系統(tǒng)后,系統(tǒng)彈出帳號密碼確認框,填寫本人的帳號,回車后,當前光標轉(zhuǎn)到密碼輸入框,輸入自己的密碼,然后回車確認或按下【登陸】按鈕,假如密碼正確,則進入系統(tǒng)。如圖5-1所示:圖5-1系統(tǒng)治理員登陸窗體注:該系統(tǒng)治理員用戶名為:admin密碼:admin假如密碼輸入錯誤,系統(tǒng)則提示:錯誤的用戶名或密碼,請重新輸入。如圖5-2所示:圖5-2錯誤信息5.2主窗口的構(gòu)成登錄進系統(tǒng)后,首先會看到一個主窗口(如圖5-3所示),它分為以下幾部分:頂部是系統(tǒng)的名稱。主窗口是一個方便查詢的萬年歷,左面是系統(tǒng)的功能模塊項,主窗口右面的部分是顯示模塊打開后的窗口。塊圖5-3主窗口的構(gòu)成模塊的分類存放至上而下的順序為:(1)職員列表(2)人力資源檔案(3)考勤治理(4)事項記錄(5)薪資治理(6)輔助功能(7)系統(tǒng)治理。使用鼠標左鍵點擊某個大類,該大類的模塊全部圖標列出,圖標對應(yīng)的是一個具體的模塊,點擊該圖標,模塊的窗口打開。下面分不介紹個模塊功能。5.3職員列表職員列表查看包括有3個頁面第一項是所有職員列表查看,在職員查看中要緊進行排序和分頁。在職員列表中顯示的是職員信息中最重要的幾項記錄,包括職員姓名、所在部門、職員號及聯(lián)系電話等最常用信息,如需了解職員得詳細信息,需要單擊職員姓名得連接打開職員詳盡信息頁面。圖5-4職員列表信息第二項是搜索職員,在職員列表下面有按條件搜索職員的表單,能夠按職員姓名、職員編號、部門進行組合查詢,填寫相關(guā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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論