Tcp之雙向通信


TestServer.java

package com.sxt.tcp;
/*
 * 服務端
 */
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;

import javax.xml.crypto.Data;

public class TestServer {
    public static void main(String[] args) throws IOException {
        System.out.println("服務端准備就緒!");
        ServerSocket server = new ServerSocket(8888);
        //獲取客戶端的Socket!
        Socket accept = server.accept();
        //讀    Socket獲取輸入流
        InputStream inputStream = accept.getInputStream();
        DataInputStream dis = new DataInputStream(inputStream);
        //讀出數據
        String string = dis.readUTF();
        System.out.println(string);
        
        //實現雙向通信 寫 輸出流 數據流
        DataOutputStream dos = new DataOutputStream(accept.getOutputStream());//注意!
        dos.writeUTF("服務端說:我已經收到!");
        
        accept.close();
        server.close();
    }
}

TestClient.java

package com.sxt.tcp2;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;

/* 基於TCP協議的Socket編程
 * 雙向通信
 * 通過IO流傳輸數據
 * 
 */
//客戶端
public class TestClient {
    public static void main(String[] args) throws UnknownHostException, IOException {
        Socket socket = new Socket(InetAddress.getLocalHost(), 8888);
        OutputStream os = socket.getOutputStream();//socket獲取輸出流
        
        //數據寫到客戶端  輸出流  數據流(4個特殊的方法)
        DataOutputStream dos = new DataOutputStream(os);
        //數據寫到服務端
        dos.writeUTF("客戶端說:你好服務器!");
        
        //接收服務端的反饋信息 讀  輸入流
        DataInputStream dis = new DataInputStream(socket.getInputStream());//注意!
        String string = dis.readUTF();
        System.out.println(string);
        
        socket.close();
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM