




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、java Socket 通信(一http:/blog.csd n.n et/gxy3509394/article/details/7899923java socket通信已經(jīng)被圭寸裝好了主要使用兩個(gè)類ServerSocket和Socket首先寫一個(gè)1v1的通信一、服務(wù)端javaview pla in copypri nt?/*/package com.d nion. socket;import java.io.BufferedReader;import java.io.BufferedWriter;import java.i o.ln putStreamReader;import java.i
2、o.OutputStreamWriter;import java.io.Pri ntWriter;import java. net.ServerSocket;import java .n et.Socket;/*項(xiàng)目名稱:JavaThread*程序名稱:JabberServer* 日期:2012-8-23上午 11:36:12*作者:*模塊:*描述:*備注:修改歷史序號(hào)日期修改人修改原因修改備注:*versio n*/public class JabberServer public static int PORT =8080;public static void main( Stri ngag
3、rs ServerSocket s =n ull;Socket socket =nu II;BufferedReader br =nu II;Prin tWriter pw =nu II;try /設(shè)定服務(wù)端的端口號(hào)s =n ew ServerSocket(PORT;System.out.pri ntln (ServerSocketStart:+s;/等待請(qǐng)求,此方法會(huì)一直阻塞,直到獲得請(qǐng)求才往下走socket =s.accept(;System.out.pri ntl n(C onn ecti on accept socket:+socket;用于接收客戶端發(fā)來的請(qǐng)求br =new Buff
4、eredReader( new In putStreamReader(socket.getl nputStream(;用于發(fā)送返回信息,可以不需要裝飾這么多io流使用緩沖流時(shí)發(fā)送數(shù)據(jù)要注意調(diào)用.flush(方法pw =new Prin tWriter( newBufferedWriter( newOutputStreamWriter(socket.getOutputStream(,true;while(trueStri ng str =br.readL in e(;if(str.equals(ENDbreak;System.out.pri ntln( Clie ntSocketMessage:
5、+str;Thread.sleep(1000;pw.pri ntl n(MessageReceived;pw.flush(;catch (Excepti one /TODO Auto-ge nerated catch block e.pri ntStackTrace(;fin allySystem.out.println(Close.;try br.close(;pw.close(;socket.close(;s.close(;catch (Exceptio ne2 二、客戶端/*/package com.d nion. socket;import java.io.BufferedReader
6、;import java.io.BufferedWriter;import java.i o.ln putStreamReader;import java.io.OutputStreamWriter;import java.io.Pri ntWriter;import java. net.ServerSocket;import java .n et.Socket;/* *目名稱:JavaThread*程序名稱:JabberServer日期:2012-8-23 上午 11:36:12作者:模塊:描述:備注:*修改歷史*序號(hào)日期修改人修改原因*修改備注:*versio n*/public clas
7、s JabberServer public static int PORT =8080;public static void main( Stri ngagrs ServerSocket s =n ull;Socket socket =nu II;BufferedReader br =nu II;Prin tWriter pw =nu II;try /設(shè)定服務(wù)端的端口號(hào)s =n ew ServerSocket(PORT;System.out.pri ntln (ServerSocketStart:+s;/等待請(qǐng)求,此方法會(huì)一直阻塞,直到獲得請(qǐng)求才往下走socket =s.accept(;Sys
8、tem.out.pri ntl n(C onn ecti on accept socket:+socket;用于接收客戶端發(fā)來的請(qǐng)求br =new BufferedReader( new In putStreamReader(socket.getl nputStream(;用于發(fā)送返回信息,可以不需要裝飾這么多io流使用緩沖流時(shí)發(fā)送數(shù)據(jù)要注意調(diào)用.flush(方法pw =new Prin tWriter( newBufferedWriter( newOutputStreamWriter(socket.getOutputStream(,true;while(trueStri ng str =br
9、.readL in e(;if(str.equals(ENDbreak;System.out.pri ntln (Clie ntSocket Message:+str;Thread.sleep(1000;pw.pri ntln (MessageReceived; pw.flush(;catch (Excepti one /TODO Auto-ge nerated catch blocke.pri ntStackTrace(;fin allySystem.out.println(Close.;try br.close(;pw.close(;socket.close(;s.close(;catch
10、 (Exceptio ne2 客戶端javaview pla in copypri nt?/*/package com.d nion .socket;import java.io.BufferedReader; import java.io.BufferedWriter; importjava.io .I OExceptio n; import java.i o.ln putStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import .Socket; /* * *J項(xiàng) 目名稱:JavaT
11、hreac程序名稱:JabberClient 日期:2012-8-23 下午 01:47:12 * 作者:* 模塊:*描述:*備注:* 修改歷史*序號(hào)*日期*修改人*修改原因*修改備注:* * version * */ publicclass JabberClient /* *方法名:main描述: 作者:白鵬飛 日期:2012-8-23下午01:47:12 * * param param args * return void */public static void main( Stri ng args Socket socket = n ull; BufferedReader br = n
12、ull; PrintWriter pw = null; try / 客戶端 socket 指定服務(wù)器的地址和端口號(hào) socket = new Socket(, JabberServer.PORT; System.out.println(Socket= + socket; / 同服務(wù)器原理一樣 br = new BufferedReader(newIn putStreamReader( socket.get In putStream(; pw = new Prin tWriter( new BufferedWriter( new OutputStreamWriter( socket.getOutputStream(; for (i nt i = 0; i 10; i+ pw.pri ntl n(howdy + i; pw.flush(; String str = br.readL in e(;System.out.println(str; pw.println(END; pw.flush(; catch (Exception e e.pri ntStackTrace(; fin ally
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人保險(xiǎn)理賠授權(quán)委托書
- 單次包車合同范本
- 口罩委托采購(gòu)合同范本
- 獸藥代理合同范本
- 世界水日活動(dòng)策劃方案
- 下學(xué)期幼兒教師的個(gè)人總結(jié)
- 推拿治療學(xué)模擬題+答案
- 別墅建設(shè)合同范本
- 勞務(wù)合同補(bǔ)充合同范本
- 發(fā)光字安裝合同范本
- 2025年哈爾濱職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫完美版
- 私募股權(quán)投資基金基礎(chǔ)知識(shí)-《私募股權(quán)投資基金基礎(chǔ)知識(shí)》高分通關(guān)卷5
- 《抗菌藥物合理運(yùn)用》課件
- 大學(xué)生創(chuàng)新創(chuàng)業(yè)基礎(chǔ)教程(高職“創(chuàng)新創(chuàng)業(yè)”課程)全套教學(xué)課件
- 中小學(xué)傳統(tǒng)文化教育指導(dǎo)標(biāo)準(zhǔn)
- 原始狩獵圖 (2)
- 《色彩構(gòu)成——色彩基礎(chǔ)知識(shí)》PPT課件
- 綠色建筑及材料分析及案列
- 鍍層的結(jié)合力
- 霍尼韋爾DDC編程軟件(CARE)簡(jiǎn)介
- 實(shí)用中西醫(yī)結(jié)合診斷治療學(xué)
評(píng)論
0/150
提交評(píng)論