基于Java的Socket編寫的C/S聊天程序實現(xiàn)
更新時間:2020年03月12日 10:41:20 作者:進階的JFarmer
這篇文章主要介紹了基于Java的Socket編寫的C/S聊天程序實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
一個很久以前寫的能夠支持C/S模式聊天的Demo,利用Java的Socket寫的。
只能聊一句就下線,挺low的。
服務器端程序Server
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.Socket; public class TestTcpServer { public static void main(String[] args) { ServerSocket ss = null; BufferedReader in = null; try { ss = new ServerSocket(8888); System.out.println("服務器啟動"); Socket socket = ss.accept(); System.out.println("連接建立"); System.out.println(socket.getInetAddress().getHostAddress()); //服務器接收客戶端發(fā)送的數(shù)據(jù) in = new BufferedReader(new InputStreamReader(socket.getInputStream())); String clientContent = in.readLine(); System.out.println("接收客戶端消息: " +clientContent); } catch (IOException e) { e.printStackTrace(); } } }
客戶端程序Clinet
import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; import java.net.Socket; import java.net.UnknownHostException; import java.util.Scanner; public class TestTcpClient { public static void main(String[] args) { Socket socket = null; BufferedWriter out = null; //客戶端發(fā)送數(shù)據(jù),服務器端接收 try { socket = new Socket("127.0.0.1",8888); System.out.println("與服務器連接了"); Scanner sc = new Scanner(System.in); String content = sc.nextLine(); out = new BufferedWriter((new OutputStreamWriter(socket.getOutputStream()))); out.write(content); out.flush(); sc.close(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally{ try { out.close(); socket.close(); } catch (IOException e) { e.printStackTrace(); } } } }
運行樣例
注意要先起S端,否則:
好啦,先起S端:
然后S端就在等待,它“說話”也沒人理它:
接著起C端:
S端也會有響應:
然后C端發(fā)消息:
S端收到消息,就雙雙Over了:
到此這篇關于基于Java的Socket編寫的C/S聊天程序實現(xiàn)的文章就介紹到這了,更多相關Java Socket C/S聊天內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:
- Java單線程程序實現(xiàn)實現(xiàn)簡單聊天功能
- JAVA Netty實現(xiàn)聊天室+私聊功能的示例代碼
- java基于netty NIO的簡單聊天室的實現(xiàn)
- 基于Java的Socket多客戶端Client-Server聊天程序的實現(xiàn)
- Java使用TCP實現(xiàn)在線聊天的示例代碼
- 基于java socket實現(xiàn) 聊天小程序
- Java NIO實戰(zhàn)之聊天室功能詳解
- Java SE實現(xiàn)多人聊天室功能
- java基于C/S結構實現(xiàn)多線程聊天室
- java基于C/S模式實現(xiàn)聊天程序(服務器)
- java基于C/S模式實現(xiàn)聊天程序(客戶端)
- java使用MulticastSocket實現(xiàn)基于廣播的多人聊天室
- Java 網(wǎng)絡編程之 TCP 實現(xiàn)簡單的聊天系統(tǒng)
相關文章
spring?boot之使用spring?data?jpa的自定義sql方式
這篇文章主要介紹了spring?boot之使用spring?data?jpa的自定義sql方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12Java反射通過Getter方法獲取對象VO的屬性值過程解析
這篇文章主要介紹了Java反射通過Getter方法獲取對象VO的屬性值過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-02-02