成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術文章
文章詳情頁

Java Tcp協議socket編程學習

瀏覽:55日期:2022-09-06 11:27:34

我學習到的主要步驟

第一步:以特定端口(如4800)新建socket對象第二步:以系統輸入設備構造BufferedReader對象,該對象用于接收系統鍵盤輸入的字符第三步:以socket對象 得到輸出流來構造PrintWriter第四步:以socket對象得到輸入流來構造相應的BufferedReader對象,該對象用于接收server端發送過來的信息

我理解到的關閉socket:先開的后關閉,socket最后關閉。

以下是客戶端的代碼實現:

package com.fan.socket;

import java.io.*;import java.net.Socket;

public class SocketClient {public static void main(String[] args) throws IOException{

try{Socket socket=new Socket('127.0.0.1',4800);System.out.println('client start ...');//向本機的4800端口發出客戶請求BufferedReader br=new BufferedReader(new InputStreamReader(System.in));//由系統標準輸入設備構造BufferedReader對象PrintWriter write=new PrintWriter(socket.getOutputStream());//由Socket對象得到輸出流,并構造PrintWriter對象BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));//由Socket對象得到輸入流,并構造相應的BufferedReader對象String readline;readline=br.readLine(); //從系統標準輸入讀入一字符串while(!readline.equals('end')){//若從標準輸入讀入的字符串為 'end'則停止循環write.println(readline);//將從系統標準輸入讀入的字符串輸出到Server2write.flush();//刷新輸出流,使Server馬上收到該字符串System.out.println('Client:'+readline);//在系統標準輸出上打印讀入的字符串System.out.println('Server:'+in.readLine());//從Server讀入一字符串,并打印到標準輸出上readline=br.readLine(); //從系統標準輸入讀入一字符串} //繼續循環write.close(); //關閉Socket輸出流in.close(); //關閉Socket輸入流 socket.close(); //關閉Socket }catch(Exception e) {System.out.println('can not listen to:'+e);//出錯,打印出錯信息}}

}

服務端代碼實現:

package com.fan.socket;

import java.io.*;import java.net.ServerSocket;import java.net.Socket;

public class SocketService {public static void main(String[] args) throws IOException{SocketService socketService = new SocketService();socketService.oneServer();}public void oneServer(){try{ServerSocket server=null;try{server=new ServerSocket(4800);System.out.println('server start is ok...');//創建一個ServerSocket在端口4800監聽客戶請求}catch(Exception e) {System.out.println('can not listen to:'+e);//出錯,打印出錯信息}Socket socket=null;try{socket=server.accept();//使用accept()阻塞等待客戶請求,有客戶//請求到來則產生一個Socket對象,并繼續執行}catch(Exception e) {System.out.println('Error.'+e);//出錯,打印出錯信息}String line;BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));//由Socket對象得到輸入流,并構造相應的BufferedReader對象PrintWriter writer=new PrintWriter(socket.getOutputStream());//由Socket對象得到輸出流,并構造PrintWriter對象BufferedReader br=new BufferedReader(new InputStreamReader(System.in));//由系統標準輸入設備構造BufferedReader對象System.out.println('Client:'+in.readLine());//在標準輸出上打印從客戶端讀入的字符串line=br.readLine();//從標準輸入讀入一字符串while(!line.equals('end')){//如果該字符串為 'end',則停止循環writer.println(line);//向客戶端輸出該字符串writer.flush();//刷新輸出流,使Client馬上收到該字符串System.out.println('Server:'+line);//在系統標準輸出上打印讀入的字符串System.out.println('Client:'+in.readLine());//從Client讀入一字符串,并打印到標準輸出上line=br.readLine();//從系統標準輸入讀入一字符串} //繼續循環writer.close(); //關閉Socket輸出流in.close(); //關閉Socket輸入流socket.close(); //關閉Socketserver.close(); //關閉ServerSocket}catch(Exception e) {//出錯,打印出錯信息System.out.println('Error.'+e);}}}

標簽: Java
相關文章:
主站蜘蛛池模板: 美女色黄网站 | 欧美激情成人网 | 日本一区二区三区高清在线观看 | 成人国产欧美精品一区二区 | 久草免费资源视频 | 精品视频一区二区 | 男人的天堂视频在线 | 亚洲精品久久九九精品 | 综合九九| 日韩一区二区在线视频 | 久久精品三级视频 | 久草影视在线观看 | 91国偷自产一区二区三区 | 精品国产欧美另类一区 | 美女黄色免费在线观看 | 在线观看精品国内福利视频 | 精品国产三级 | 九九精品视频在线观看 | 久久亚洲精品国产精品777777 | 自拍一区在线观看 | 亚洲欧美日韩国产综合高清 | 亚洲人成网址在线观看 | 在线视频三区 | 成人午夜两性视频免费看 | 日韩欧美精品在线观看 | 亚洲深夜视频 | 99久久精品免费看国产 | 成人毛片免费播放 | 日韩精品在线看 | 亚洲欧美自拍偷拍 | 亚洲精品二区 | 国产午夜精品理论片影院 | 久草在线视频在线观看 | 欧美成人免费观看久久 | 久久久久久久国产a∨ | 国产在线视频一区二区三区 | 91大神在线精品视频一区 | 97在线视频免费观看费观看 | 欧美一区二区在线观看 | 伊人成人在线视频 | 成人老司机深夜福利久久 |