日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JAVA—socket编程

發布時間:2023/12/10 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JAVA—socket编程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、什么是socket編程

socket編程,是在不同的進程間進行網絡通訊的一種協議,在socket編程中基于TCP、UDP等協議做的一層封裝,是一套系統所提供的的用于進行網絡通信的編程接口。

二、 java實現socket代碼

客戶端java代碼:

import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.util.Scanner;public class TcpSocketClient {/*** 客戶端程序*/public void client() throws IOException {Scanner scanner = new Scanner(System.in);System.out.println("等待連接服務端!");Socket socket = new Socket("127.0.0.1", 2111);System.out.println("連接服務端成功!");while (true) {// 給服務端發信息System.out.print("請輸入:");String s = scanner.next();if ("out".equals(s)) {break;}OutputStream outputStream = socket.getOutputStream();outputStream.write(s.getBytes(StandardCharsets.UTF_8));byte[] bytes = new byte[1024];// 讀一下服務端發來的信息InputStream inputStream = socket.getInputStream();int read = inputStream.read(bytes);System.out.println("服務端:" + new String(bytes, 0, read, Charset.defaultCharset()));}}public static void main(String[] args) throws IOException {TcpSocketClient tcpSocketServer = new TcpSocketClient();tcpSocketServer.client();} }

?服務端java代碼:

import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.util.Scanner;public class TcpSocketServer {/*** 服務端程序*/public void server() throws IOException {Scanner scanner = new Scanner(System.in);// 服務端監聽 1111 端口ServerSocket serverSocket = new ServerSocket(1111);System.out.println("等待連接");Socket client = serverSocket.accept();System.out.println("連接成功!");while (true) {// 獲取客戶端輸入流InputStream inputStream = client.getInputStream();byte[] bytes = new byte[1024];int read = inputStream.read(bytes);// 客戶端發來的消息System.out.println("客戶端:" + new String(bytes, 0, read, Charset.defaultCharset()));// 給客戶端發端消息System.out.print("請輸入:");String nextLine = scanner.next();if ("out".equals(nextLine)) {break;}client.getOutputStream().write(nextLine.getBytes(StandardCharsets.UTF_8));}}public static void main(String[] args) throws IOException {TcpSocketServer tcpSocketServer = new TcpSocketServer();tcpSocketServer.server();;} }

三、socket測試流程分析

先啟動服務端server,再啟動客戶端client,等待提示連接成功后就可以測試發信息了

?server啟動連接:

??client啟動連接:

?流程分析:

?

總結

以上是生活随笔為你收集整理的JAVA—socket编程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。