java客戶端與服務端通訊Tcp/Ip
阿新 • • 發佈:2019-01-06
Java伺服器與客戶端的連線
客戶端程式
server.java
package com.sram.sever; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket; public class Sever { public static void main(String[] args) throws Exception{ ServerSocket serverSocket =new ServerSocket(5555); System.out.println("服務端已經啟動,等待客戶端輸入********"); while(true) { Socket client=serverSocket.accept(); //使用簡單的流來輸出 //此列印流就是伺服器先客戶端輸出的資訊流 PrintStream printstream= new PrintStream(client.getOutputStream()); //printstream.println("liuxingruichoubi"); BufferedReader readerClient = new BufferedReader(new InputStreamReader(client.getInputStream())); String clientStr=readerClient.readLine(); System.out.println("接收到了---->"+clientStr); printstream.println("接收到了---->"+clientStr); } } }
伺服器程式
client.java
package com.sram.sever; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.PrintStream; import java.net.Socket; import javax.print.PrintService; public class client { public static void main(String[] args) throws Exception{ Socket client =new Socket("192.168.0.12",5555); //建立物件讀取服務端傳送內容,轉換流 //字元輸入流 BufferedReader readerServer = new BufferedReader(new InputStreamReader(client.getInputStream())); //向服務端輸出內容 PrintStream printstream= new PrintStream(client.getOutputStream()); //讀取控制檯輸入流 BufferedReader readerConsole = new BufferedReader(new InputStreamReader(System.in)); String consoleStr=readerConsole.readLine(); //將控制檯的內容傳送給服務端 printstream.println(consoleStr); String serverStr=readerServer.readLine(); System.out.println("伺服器返回內容:"+serverStr); } }
通訊協議