日韩欧美视频一区-日韩欧美三区-日韩欧美群交P内射捆绑-日韩欧美精品有码在线播放免费-成人免费一区二区无码视频-成人免费一级毛片在线播放视频

樹人論文網(wǎng)一個專業(yè)的學術咨詢網(wǎng)站!!!
樹人論文網(wǎng)

WWW對大量數(shù)據(jù)查詢一種實現(xiàn)核心期刊發(fā)表

來源: 樹人論文網(wǎng)發(fā)表時間:2013-08-29
簡要:企業(yè)通過WWW服務和數(shù)據(jù)庫技術相結合的辦法,構建一種三層客戶端/服務器的體系結構,用戶通過INTERNET瀏覽企業(yè)信息,但是當瀏覽大量數(shù)據(jù)庫數(shù)據(jù)時,網(wǎng)絡連接常因速度緩慢或因超時而

  摘要 企業(yè)通過WWW服務和數(shù)據(jù)庫技術相結合的辦法,構建一種三層客戶端/服務器的體系結構,用戶通過INTERNET瀏覽企業(yè)信息,但是當瀏覽大量數(shù)據(jù)庫數(shù)據(jù)時,網(wǎng)絡連接常因速度緩慢或因超時而中斷。本文介紹了WWW數(shù)據(jù)庫訪問技術,通過對各種技術進行分析和比較,針對新華書店發(fā)行集團網(wǎng)站設計的需求,采用ASP技術實現(xiàn)數(shù)據(jù)的分頁傳輸。

  關鍵詞 ASP,ADO,三層體系結構,客戶端/服務器,分頁,電子核心期刊征稿

  目前,大多數(shù)企業(yè)通過WWW服務和數(shù)據(jù)庫技術相結合的辦法,構建一種三層客戶端/服務器的體系結構,即客戶端瀏覽器/中間服務器(WEB服務器)/數(shù)據(jù)庫服務器(B/W/D),利用INTERNET向世界各地發(fā)布企業(yè)的商業(yè)信息。用戶為了獲得企業(yè)的商品信息,通過瀏覽器訪問企業(yè)的網(wǎng)站,某些情況下,用戶所需的信息量巨大,此時企業(yè)的網(wǎng)頁傳輸時間漫長或連接超時,用戶因此放棄瀏覽信息,給企業(yè)造成一定的經(jīng)濟損失,這當然不是企業(yè)所希望的。為了解決這種大數(shù)據(jù)量的發(fā)布問題,首先了解一下三層體系結構是怎樣處理數(shù)據(jù)庫數(shù)據(jù)的。

  1. 三層體系結構的數(shù)據(jù)庫訪問技術

  一種通用的三層客戶端/服務器體系結構如下圖1所示,這種體系結構與傳統(tǒng)的二層C/S結構比較,最大的優(yōu)點就是將網(wǎng)絡通信和數(shù)據(jù)庫操作分離開來,并在客戶端和WEB服務器間使用多路復用技術,減輕了數(shù)據(jù)庫服務器CPU的負載,加快數(shù)據(jù)的處理能力。

  圖1 三層體系結構

  在開發(fā)基于WWW的數(shù)據(jù)庫應用中,關鍵技術之一在于WEB服務器與數(shù)據(jù)庫服務器之間的連接技術。目前,數(shù)據(jù)庫連接技術可歸納為以下幾個方面。

  基于CGI(通用網(wǎng)關接口)規(guī)范編寫的CGI程序,該程序既要處理WEB服務器與瀏覽器之間的信息傳輸,又要處理WEB服務器與數(shù)據(jù)庫的連接、查詢和基于查詢結果的HTML頁面的產(chǎn)生。

  利用API(應用程序接口)對WEB服務器的功能進行擴展,這種方法較靈活,但編程人員需具有一定的編程技巧,對API詳細了解,以及對C++等語言的熟練掌握,因此開發(fā)周期長,成本較高。目前較流行的API有MICROSOFT公司的ISAPI和NETSCAPE公司的NSAPI。

  利用JDBC進行數(shù)據(jù)庫連接,采用JAVA語言進行編程,由于JAVA具有較為嚴格的安全機制,同時它實現(xiàn)了跨平臺性,因此它是一種較為熱門的技術,但JAVA與C++相似,開發(fā)效率不是很理想。

  利用ASP(ACTIVE SERVER PAGES)技術,ASP技術基于微軟的DCOM(分布式COM)標準,是微軟公司提供的一種服務器端腳本支持環(huán)境,它通過ADO(ACTIVEX DATA OBJECT)控件的方式來處理與數(shù)據(jù)庫的連接。

  由于ASP技術開發(fā)周期短,成本低,對控件的支持可以開發(fā)出較為理想的應用,所以,ASP得到廣泛的應用。ASP文件是以.asp為擴展名的文本文件,這個文本文件可以包括下列部分:文本、HTML標記、ASP腳本命令。ASP文件存放在WEB服務器相應的目錄中,當客戶瀏覽器從WEB服務器上請求.asp文件時,ASP腳本開始運行,將運行結果和.asp中的靜態(tài)部分組合成標準的HTML格式傳輸給客戶端瀏覽器。ASP對數(shù)據(jù)庫的訪問是通過ADO對象來實現(xiàn)的,它把數(shù)據(jù)庫查詢結果放在HTML頁中傳給瀏覽器,過程如下圖2示。鑒于ASP的優(yōu)點,采用它來解決大容量數(shù)據(jù)庫的訪問。

  2. 問題的提出

  前面已經(jīng)提到,客戶端訪問企業(yè)網(wǎng)站時從數(shù)據(jù)庫中查詢出大量數(shù)據(jù)傳送給客戶端,易造成連接超時而中斷傳輸。作者在開發(fā)某新華書店發(fā)行集團網(wǎng)站中就遇到類似的情況,由于數(shù)據(jù)庫中書目表記錄多達6萬多條,而在發(fā)行行業(yè)中有一種分類法稱為十大類分類法,平均每類書目達五六千種。這樣,當各地分銷商查詢某一類書目時,在服務器端采用ASP技術,將查詢結果存于ADO對象庫的RECORDSET對象中,然后將查詢結果生成HTML格式傳輸給分銷商的瀏覽器。我們可以計算一下,每條記錄長度為250字節(jié),查詢一類書目就需至少傳輸250*5000即1250K字節(jié)的數(shù)據(jù),通常情況下,網(wǎng)絡會因超時而中止連接。因此,能否解決這種情況,關系到企業(yè)網(wǎng)站的生存,對其他類似情況也具有實際借鑒意義。

  3. 實際解決方案

  在新華書店發(fā)行集團的網(wǎng)站開發(fā)中,一方面為了避免由于數(shù)據(jù)整體傳送時間過長而導致的斷連,另一方面為了滿足用戶瀏覽數(shù)據(jù)的局部性要求,故將數(shù)據(jù)化整為零,采用分頁技術來加快數(shù)據(jù)的傳輸。在訪問WEB服務器時,有兩個因素限制了網(wǎng)頁的連接時間:一是數(shù)據(jù)庫的查詢操作,另一個是網(wǎng)絡傳輸?shù)臄?shù)據(jù)量。在數(shù)據(jù)庫中的查詢,可以通過建立索引來解決,例如,對前面提到的書目表按十大類字段進行索引,這樣,大大加快了數(shù)據(jù)庫查詢速度。為了減少網(wǎng)絡傳輸數(shù)據(jù)量,采用分頁傳輸?shù)募夹g,例如,客戶端查詢出五千多條記錄可以一次僅傳輸二十條記錄,這樣,加快網(wǎng)頁的連接時間就不會因超時而中斷。分頁技術用onepage.asp腳本實現(xiàn)部分代碼如下:

  set Conn=Server.CreateObject (adodb.connection) ‘連接ODBC

  Conn.Open xhsd,”sa”,”hxrjb1”

  .

  .‘生成sql語句

  .

  set Rs=Server.CreateObject (adodb.recordset) ‘查詢結果存于Rs

  Rs.Open sql,Conn

  set session(Rs) = Rs

  首先,通過ASP的內(nèi)置對象SERVER創(chuàng)建一CONNECTION對象conn,并將其與指定的數(shù)據(jù)庫關聯(lián),通過該對象的open方法打開。接著,可根據(jù)系統(tǒng)的實際需求,構造滿足所需數(shù)據(jù)的SQL語句,然后再通過SERVER對象創(chuàng)建一RecordSet對象Rs,并由Rs的方法open取得數(shù)據(jù)庫記錄,同時將Rs保存在Session中,以供其他頁面使用。為了計算數(shù)據(jù)記錄分多少頁,必須先定義每頁顯示的記錄數(shù)和記錄的總數(shù)。代碼中使用變量Session(“PageSize”)標志每頁記錄數(shù),Session(“PageCount”)標志分頁數(shù)。下面一段代碼功能為顯示某一頁的記錄,這一段代碼為分頁顯示的核心代碼。

  Rs.MoveFirst

  Rs.Move (page-1)*Session(“PageSize “)

  for i=1 to Session(“PageSize “)

  Response.Write

  for j=0 to rs.Fields.Count-1

  Response.Write & rs.Fields(j).Value &

  next

  Response.Write

  Rs.MoveNext

  if Rs.EOF then

  exit for

  end if

  next

  Response.Write

  Response.Write

  代碼通過對象Rs的方法Move將記錄指向由page確定的那一頁的第一條記錄,然后用循環(huán)語句依次列出每條記錄。為了定位在某一頁,必須使用一參數(shù)將頁碼信息傳給服務器,此處,使用帶參數(shù)的超級鏈接來實現(xiàn)。具體代碼如下:

  if page<>1 then

  Response.Write 第一頁

  Response.Write

主站蜘蛛池模板: 色欲AV无码乱码精品国产 | 青青草在现线免费观看 | 亚洲、国产综合视频 | 疯狂小护士 | 无码137片内射在线影院 | 99视频在线免费观看 | 亚洲精品视频观看 | 美女丝袜夹b | 嗯 用力啊 嗯 c我 啊哈老师 | 20岁中国男同志china1069 20岁αsrian男同志免费 | 摸老师丝袜小内内摸出水 | 国产精品午夜福利在线观看 | 亚洲三级黄色 | 伊人国产在线视频 | 一区二区视频在线观看高清视频在线 | 最近日本MV字幕免费观看视频 | 老司机福利在 线影院 | 女人操男人 | 亚洲色偷偷偷网站色偷一区人人藻 | 国产午夜一级淫片 | 亚洲不卡视频在线观看 | 扒开小处30p | 无码AV免费精品一区二区三区 | 99久久精品费精品国产一区二 | 日本亚洲中文字幕无码区 | 国产高清精品国语特黄A片 国产高清国内精品福利色噜噜 | 拔擦拔擦8X永久华人免费播放器 | 99久久久无码国产精品免费人妻 | 国产精品婷婷久青青原 | 快播dvd吧| 深爱激情站 | 色噜噜噜亚洲男人的天堂 | 国产 日韩 欧美 综合 激情 | GOGOGO高清在线播放免费 | 久久热这里只有 精品 | 王晶经典三级 | YY8848高清私人影院 | 国产免费人视频在线观看免费 | 男生在床上脱美女 胸 | 最近更新2019中文字幕国语 | 差差差差差差差差免费观看 |