亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發(fā) > Java > 正文

用JDBC開發(fā)基于客戶/服務(wù)器模式的Internet

2023-06-10 12:43:25
字體:
供稿:網(wǎng)友

1、概述

隨著Internet/Intranet的普及以及WEB技術(shù)的發(fā)展,人們對信息的需求越來越強烈,數(shù)據(jù)庫與Internet/Intranet應(yīng)用軟件的集成已經(jīng)成為了非常迫切的問題?;ヂ?lián)網(wǎng)上數(shù)據(jù)庫產(chǎn)品的復(fù)雜,有限的帶寬,以及互聯(lián)網(wǎng)上軟件產(chǎn)品的跨平臺性,將是我們遇到的最大困難。本文通過作者的工作實踐,介紹了JDBC規(guī)范及應(yīng)用JAVA的SOCKET機制,以及JAVA的客戶/服務(wù)器計算模式,最后根據(jù)以上的原理,實現(xiàn)了一個簡單的基于客戶/服務(wù)器的JAVA查詢遠端服務(wù)器上的數(shù)據(jù)庫的小例子。

2、問題提出

當(dāng)我從事Internet/Intranet軟件開發(fā)時,為了達到很好的兼容性,安全性以及跨平臺性,不得不采用JAVA編程,但是JAVA數(shù)據(jù)庫方面的不足,確實眾所周知。雖然JDBC技術(shù)在一段時間以前就已經(jīng)發(fā)布了,但是對于大多數(shù)數(shù)據(jù)庫產(chǎn)品而言,卻要為其編制特殊的驅(qū)動。雖然有一些數(shù)據(jù)庫廠商用JAVA編寫了自己產(chǎn)品的驅(qū)動(如IBM的DB2數(shù)據(jù)庫軟件),但是這類產(chǎn)品的價ge和復(fù)雜的使用方法卻是使一些中小企業(yè)和Internet愛好者們望而卻步,另外,在有限的帶寬下如何減少數(shù)據(jù)的流量等一系列問題,將是解決這類問題的最大的絆腳石。因此,我們必須解決這類問題,并且產(chǎn)生一個跨平臺性的,能掛接多種數(shù)據(jù)庫的,基于客戶/服務(wù)器的軟件解決方案。

3、分析問題

以上的問題我們可以用JAVA的Socket機制實現(xiàn)客戶/服務(wù)器,然后在服務(wù)器端用JDBC來完成客戶端所提交的查詢要求,因此,將問題分為如下兩個方面。

(1)JAVA中的Socket機制

在各種網(wǎng)絡(luò)的客戶/服務(wù)器應(yīng)用中,客戶與服務(wù)器之間的通訊機制是多種多樣的,但大多數(shù)都采用的是基于TCP/IP的Socket機制來完成的,Socket是兩個程序間用來進行雙向傳輸?shù)木W(wǎng)絡(luò)通訊端點,在服務(wù)器程序方面通過IP在網(wǎng)絡(luò)中標(biāo)識自己,然后,通過一個客戶端程序知道的端口號來提供服務(wù),而客戶端在網(wǎng)絡(luò)中通過服務(wù)器的IP來找到服務(wù)器,通過連接他的端口號來獲得服務(wù)器的某項服務(wù)。當(dāng)然,計算機也擁有一些內(nèi)置的用來提供其他服務(wù)的端口和空閑的端口,這樣這些空閑端口就可供程序員來使用。由于Socket通訊機制是一種較為底層的通訊機制,所以通過Socket的數(shù)據(jù)表示是一種原始的字節(jié)流信息。那么客戶端 服務(wù)器的程序就應(yīng)該按照程序員制定的一種約定來進行數(shù)據(jù)的格式化處理后才能進行具體的應(yīng)用,這種約定實際上就是一種協(xié)議。

Socket通訊機制提供了兩種通訊方式,一種是有連接的,另一種是無連接的。有連接的方式是指程序在開始時,雙方就建立了連接,形成了一條通訊鏈路,這條通訊鏈路一直存在,直到任意一方終止連接為止。在連接的同時,雙方就通過這個通訊鏈路進行I/O操作,這種方式是可靠的而且是全雙工的。無連接的方式是指提供不可靠的連接,數(shù)據(jù)傳送時是以數(shù)據(jù)報的方式發(fā)送,類似與我們的寄信。本文采用的為有連接方式。

JAVA在現(xiàn)實中有兩個類用于Socket連接,一個是ServerSocket類,應(yīng)用于服務(wù)器方;一個是Socket,應(yīng)用于客戶方。在服務(wù)器端用如下語句對端口進行初始化及監(jiān)聽:

try{ 
                ServerSocket server=new ServerSocket(9001);//監(jiān)聽9001端口,此端口不能與系統(tǒng)的 
                //端口號沖突
               Socket socket=server.accept();//阻塞進程,一旦有客戶連接初始化socket類 
               DataInputStream in=new DataInputStream(socket.getInputStream()); //建立輸入流 
               PrintStream out=new PrintStream(socket.getOutputStream()); //建立輸出流 
               }
             catch(IOException e){}

在客戶端用如下語句即可與服務(wù)器連接:

try{ 
                 socket=new Socket(hostname,9001);//連接以hostname的服務(wù)器,端口號為9001 
                 //這里的hostname為服務(wù)器的IP地址 
                  in=new DataInputStream(socket.getInputStream());//初始化輸入流 
                  out=new PrintStream(socket.getOutputStream());//定義輸出流 
                  }catch(IOException e){}

通過以上語句后,在客戶與服務(wù)器之間就建立了in和out這兩個輸入和輸出流,那么就可以進行通信了。最后,為了在服務(wù)器端能響應(yīng)多個客戶端的請求,在服務(wù)器的輸入和輸出流的處理中應(yīng)用了多線程,是每一個線程對應(yīng)一個客戶端的服務(wù),由于JAVA的內(nèi)存管理是一種????管理,當(dāng)某一個客戶的連接斷開后,服務(wù)器程序分配給這一個客戶的線程的資源就會被自動收回。其多線程的語句如下:

 new ServerThread(clientname,clientcount,socket).start();

//初始化一個新的ServerThread類(注:ServerThread類為程序的一個線程類

在以上的語句中clientcount為傳給ServerThread類的線程號。

經(jīng)過以上的語句后,客戶端與服務(wù)器端之間就建立了聯(lián)系,而且實現(xiàn)了多線程。

(2)JDBC淺析。

隨著JAVA的興起,JAVA的子公司JAVASOFT為了實現(xiàn)JAVA存取數(shù)據(jù)庫而提供了一套數(shù)據(jù)庫連接規(guī)范JDBC(JAVA DATABASE CONNECTIVITY)有一些數(shù)據(jù)庫廠商根據(jù)這個數(shù)據(jù)庫規(guī)范開發(fā)了自己的數(shù)據(jù)庫JAVA的API,但這些在價ge和使用的復(fù)雜度方面往往讓人難以接受。另外,由于這些API增加了很多功能,是基于瀏覽器的JAVA APPLET加載的速度變慢而且影響了速度。而本程序是為一定需要而設(shè)計的故代碼很小,執(zhí)行速度相對加快。

JAVA為了實現(xiàn)數(shù)據(jù)庫的連接而推出了JDBC規(guī)范,JDBC設(shè)計是基于X/OPEN SQL CLI(CALL LEVEL INTERFACE)這一模型,定義了一組API對象和方法,程序員可以使用這些API與數(shù)據(jù)庫程序進行交互。JDBC API是一個應(yīng)用于數(shù)據(jù)庫的接口,用來解釋和執(zhí)行來自應(yīng)用程序中的SQL語句,并返回結(jié)果集。它可以全部用JAVA寫作為APPLET的一部份下載,又可以是一種本地模塊與現(xiàn)有的數(shù)據(jù)庫連接。如SUN和INTERSOLV合作開發(fā)的JDBC-ODBCBRIDGE就是一種通過JDBC來訪問機器上的已定義的ODBC數(shù)據(jù)源,JDBC-ODBCBRIDEG可以通過在JDBC和ODBC之間建立一個橋梁,讓JAVA程序通過JDBC來訪問ODBC中的數(shù)據(jù)源。

在JDK1.1.5以上的版本中已經(jīng)包含了JDBC-ODBCBRIDGE,讀者如沒有也可從SUN的網(wǎng)站上下載。在我們的程序中即是采用了這一種方式來實現(xiàn)對各種ODBC數(shù)據(jù)源的訪問的。下面我們簡要的介紹一些本套程序要用到的一些基本的類,讀者如想獲得更多的幫助可以察看SUN JDBC的幫助文檔。

DriverManager類用于處理驅(qū)動程序的裝入。使用該類來定義一些程序中使用的所要連接的驅(qū)動,在本程序中就是JDBC-ODBCGRIDGE;

Connection類定義了一個到特定數(shù)據(jù)庫的連接。當(dāng)程序定義了驅(qū)動以后,就要與數(shù)據(jù)庫建立連接,該類將完成這些工作;

Statement類提供了一個執(zhí)行SQL語句的容器。用來提交一個SQL查詢;

ResultSet類用于控制結(jié)果類的存取。其作用是獲得查詢結(jié)果的一些信息,如結(jié)果的紀(jì)錄數(shù),字段數(shù),字段名,結(jié)果集等與結(jié)果相關(guān)的信息。

(注意!由于本程序意在介紹編程方法和思想,所以JDBC的一些具體類的使用方法不屬于本文的范疇。有關(guān)其中具體的使用方法將會在后面程序中寫出。)

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
天堂成人在线观看| 欧美黄色免费在线观看| 国产视频你懂的| 国内不卡的二区三区中文字幕| 少妇性饥渴无码a区免费| 国产亚洲精品久久久久久无几年桃| 又爽又黄的午夜网站| 精品精品欲导航| 国产成人无码精品久在线观看| 国产人妖一区| 欧美亚洲爱爱另类综合| 国产精品videossex| 1769国内精品视频在线播放| 91精品国产福利尤物| 欧美freesex8一10精品| www.夜夜爽| 国产精品成人99一区无码| 日韩精品看片| 国产在线视频不卡| 亚洲精品久久久蜜桃| 精品国产91洋老外米糕| 国产成人精品亚洲线观看| 91夜夜揉人人捏人人添红杏| 久草在线视频网站| 国产一级性生活| xxxx黄色片| 国产激情在线免费观看| 精品久久久免费视频| 含羞草www国产在线视频| 中文字幕视频在线免费| 九色视频网站| 午夜精品久久久久久久久久久久| 婷婷精品在线观看| 青青草偷拍视频| 欧美一区二区三区在| 欧美激情欧美激情在线五月| 欧美性一区二区三区| 暴力调教一区二区三区| 人成免费在线视频| 手机看片福利在线| 国产亚洲午夜| 国内外免费激情视频| av日韩在线免费观看| 乱亲女秽乱长久久久| 欧美激情第一页xxx| 精品产国自在拍| 亚洲精品爱爱久久| 91狠狠综合久久久久久| 欧亚精品一区| 日韩av不卡一区二区| 992tv在线成人免费观看| 日韩一级免费在线观看| 91啦中文在线| 欧美日韩亚洲一区二区三区在线| h片在线观看网站| 激情小说图片视频| 69堂亚洲精品首页| 天天摸天天操天天干| 国产一区二区三区成人欧美日韩在线观看| 精品成人一区二区| 久久夜色精品亚洲噜噜国产mv| 在线观看无遮挡| 中文亚洲av片在线观看| 国产成人综合一区| 欧美成人一区二区三区高清| 日韩精品中文字幕一区| 78国产伦精品一区二区三区| 女人成午夜大片7777在线| 日本三级2019| 毛片av免费观看| 小说区亚洲自拍另类图片专区| 国产精品久久97| 欧美激情精品久久久久久| 中文字幕99| 午夜日韩电影| 毛片一区二区| 国产欧美二区| 国语对白一区二区| 亚洲视频网站在线| 精品久久久久久综合日本欧美| 日韩一区二区久久久| 亚洲一区二区三区四区在线免费观看| 国产二区在线播放| 在线精品一区二区| 日韩美女免费线视频| 久久久久久久久久久久久久久国产| 中文在线一区二区| 欧美久久一区| 亚洲欧美综合在线精品| 日韩一区二区福利| 亚洲欧美福利视频| 日韩毛片在线观看| 国产成人三级一区二区在线观看一| 色一情一乱一区二区三区| 国产美女在线播放| 国产精品午夜剧场| 亚洲一区在线视频观看| 国产日韩中文字幕| 国产精品久久久久久久久久10秀| 麻豆tv在线播放| 懂色av一区二区三区四区| 欧美精品黄色| 自慰无码一区二区三区| 亚洲日本护士毛茸茸| www.亚洲成人网| 亚洲三区欧美一区国产二区| 亚洲天堂男人天堂女人天堂| 亚洲国产成人午夜在线一区| 日韩精品一区二区三区色欲av| 欧美aa在线观看| 悠悠资源网久久精品| 少妇毛片一区二区三区| 亚洲在线成人精品| 国产精品chinese在线观看| 国内精品偷拍视频| 日韩在线一二三| 国模精品一区二区| 全球成人中文在线| 久草在线新免费首页资源站| 秋霞av国产精品一区| 午夜在线免费视频| av一区和二区| 久久精品噜噜噜成人av农村| 亚洲色成人www永久网站| 精品三级久久久久久久电影聊斋| 日韩久久视频| 欧美探花视频资源| **三级三级97片毛片| 香蕉久久精品日日躁夜夜躁| 在线欧美成人| 国产精品久久久久久久久久久不卡| 成人疯狂猛交xxx| 99se视频在线观看| 日韩av免费观影| 黄色羞羞视频在线观看| 久久综合伊人77777尤物| 亚洲free性xxxx护士白浆| 国产精品视频一区二区三区| 国产精品自拍一区| 少妇高潮爽到全身痉挛抽搐| 在线看日韩欧美| 水蜜桃亚洲一二三四在线| 国产91丝袜在线18| 国产日韩三区| 欧美日韩在线免费观看视频| 亚洲视频在线免费观看| 亚洲aaa视频| 亚洲影视九九影院在线观看| 一级毛片美女欧洲| 岛国电影中文在线| 国产成人福利av| 国产成人免费在线观看不卡| 水蜜桃久久夜色精品一区的特点| 久久久av亚洲男天堂| av在线影院| 高清国产午夜精品久久久久久| 精品人妻一区二区三区潮喷在线| 97超碰蝌蚪网人人做人人爽| 91精品国产综合久久香蕉麻豆| 天天色天天综合| 欧美男男大粗吊1069| 国产精品美女免费视频| 亚洲精品国产一区二区三区四区在线| av观看网址| 永久久久免费浮力影院| 三级中文字幕在线观看| 在线观看国产一区二区| 四虎精品一区二区三区| japanese国产| 一级毛片免费观看| 精品一区二区三区免费| 精品一区二区日韩| 国产精品日产欧美久久久久| 成人网18免费网站| 日本一级理论片在线大全| 手机av在线播放| 在线a人片免费观看视频| 97av在线影院| 亚洲国产精品久久久久婷婷884| 中文字幕国产免费| 亚洲在线观看免费视频| 久久不见久久见国语| 免费在线观看黄色| 色吊丝一区二区| 国产精品对白| 亚洲视频 欧美视频| 国产视频丨精品|在线观看| 欧美视频二区欧美影视| 人人妻人人玩人人澡人人爽| 黑人巨大国产9丨视频| 男人的天堂亚洲在线| 一区二区三区午夜| 国产成人无遮挡在线视频| 一区二区激情| 国产免费一区二区视频| 亚洲精品中文字幕在线观看| 国内精品久久国产| 91日韩免费| 日韩欧美一二三四区| www.av中文字幕| 天堂精品中文字幕在线| 亚洲欧洲在线视频| 欧美三级精品| 九九热视频精品在线观看| 日本午夜免费一区二区| 日本黄网站免费| 久久国产美女视频| 一区二区在线观看视频在线| 欧美日韩**字幕一区| 九九热视频在线观看| 国产三级做爰高清在线| 国产精品久久久久9999赢消| 网红女主播少妇精品视频| 亚洲AV成人无码一二三区在线| 成人在线免费观看视频| 婷婷一区二区三区| 成人激情四射网| 欧美电影在线观看免费| 国产一区二区自拍视频| 亚洲欧美日本在线| 97se亚洲国产综合自在线不卡| 国产成人三级| 国产中文一区二区| 欧美大波大乳巨大乳| 日韩在线观看免费全| 奇米色777欧美一区二区| 蜜桃av久久久亚洲精品| 九九色在线视频| 无码aⅴ精品一区二区三区| 日本一区二区三区免费看| 日韩一区二区电影网| 精品欧美一区二区三区在线观看| 日本伦理一区二区| 亚洲国产精品悠悠久久琪琪| 国产高清一区视频| www中文在线| 日本理论片2828理论片| 国产精品边吃奶边做爽| 久久精品久久99精品久久| 91精品国自产在线| 欧美日本一区二区视频在线观看| 久久爱91午夜羞羞| 国产尤物在线观看| 三级外国片在线观看视频| 午夜久久99| 在线小视频你懂的| 日韩一级免费在线观看| 97国产精品免费视频| 亚洲男人av| 91在线视频观看免费| 欧美狂欢多p性派对| 中文字幕日韩欧美精品高清在线| 一区二区视频国产| 国产美女特级嫩嫩嫩bbb片| 欧美乱xxxxxxxxx| 国产欧美日韩中文| 国产又粗又大又长| 精品国产网站| 中文字幕久热精品视频在线| 国产精品久久久久久亚洲色| 黄色片免费在线| 国产亚洲人成网站在线观看| 精品国产一区二区国模嫣然| 在线天堂av| 欧美日韩亚洲综合一区二区三区| 九九综合九九综合| 青青草视频国产| 日韩免费在线视频| 精品国产一区二区三区香蕉沈先生| 欧美性另类69xxxx| canopen超线视频网线的应用| 91在线品视觉盛宴免费| 亚洲精品aaaaa| 欧美成人福利视频| 九九热国产视频| 日韩精品不卡一区二区| 欧美高清hd18日本| 亚洲一区视频在线观看视频| 亚洲一区二区天堂| 99久久国产热无码精品免费| 国产乱理伦片a级在线观看| 日韩一级片在线观看| 久久久久久久免费视频了| 精品国内一区二区三区免费视频| 国产成人精品在线| 性欧美在线看片a免费观看| 免费看污片网站| 久久综合偷偷噜噜噜色| 青青草国产免费一区二区下载| 91久久视频| 青青草在线免费观看| 欧美日韩夫妻久久| 久久高清内射无套| 欧美性猛交xx乱大交| 另类小说一区二区三区| 日本久久黄色| 日韩最新中文字幕电影免费看| 26uuu另类欧美亚洲曰本| 啊啊啊啊啊好爽| 日本精品一区二区三区在线观看视频| 日本小视频在线免费观看| 色视频精品视频在线观看| 亚洲人成人无码网www国产| 在线伊人免费视频| 国产精彩精品视频| 精品欧美一区二区久久| japanese在线观看| 在线观看免费黄色片| 国产在线观看一区| 亚洲精品中文字幕| 欧美在线中文字幕高清的| 97国产精品视频人人做人人爱| 亚洲欧美色图视频| 99精品全国免费观看视频软件| 一区二区视频免费完整版观看| 成人高清视频免费观看| 57pao国产成人免费| 日韩在线无毛| 最新版天堂中文在线官网| 黄色网页在线看| 999久久久久久| 日韩av高清在线| 午夜欧美2019年伦理| 成人a区在线观看| 很黄很污的视频网站| 亚洲人成电影在线观看网| 亚洲欧美中文日韩在线v日本| 福利视频网站一区二区三区|