首页> Java> java教程> 正文

Java网络编程中如何配置和使用套接字?

PHPz
发布: 2024-04-15 21:39:01
原创
533 人浏览过

Socket 是网络编程的基础,允许应用程序通过网络相互通信。本指南提供了如何配置和使用 Socket 的详细步骤:创建套接字:指定端口和地址。使用套接字:服务器端监听连接、读写数据;客户端端连接到服务器、发送和接收数据。实战案例:建立简单的聊天应用程序,演示如何使用 Socket 进行双向通信。

Java网络编程中如何配置和使用套接字?

Java 网络编程:Socket 配置和使用指南

套接字 (Socket) 是网络编程的基础,允许应用程序通过网络相互通信。本指南将介绍如何在 Java 中配置和使用套接字。

配置套接字

创建套接字的步骤如下:

// 创建一个 ServerSocket 监听端口 8080 ServerSocket serverSocket = new ServerSocket(8080); // 创建一个 Socket 客户端连接到 localhost:8080 Socket clientSocket = new Socket("localhost", 8080);
登录后复制

使用套接字

服务器端:

// 接受客户端连接 Socket clientSocket = serverSocket.accept(); // 获取输入流和输出流 DataInputStream input = new DataInputStream(clientSocket.getInputStream()); DataOutputStream output = new DataOutputStream(clientSocket.getOutputStream()); // 读写数据 String message = input.readUTF(); output.writeUTF("Hello from server: " + message); // 关闭连接 clientSocket.close();
登录后复制

客户端端:

// 发送数据到服务器 DataOutputStream output = new DataOutputStream(clientSocket.getOutputStream()); output.writeUTF("Hello from client"); // 接收服务器响应 DataInputStream input = new DataInputStream(clientSocket.getInputStream()); String serverMessage = input.readUTF(); // 关闭连接 clientSocket.close();
登录后复制

实战案例

建立一个简单的聊天应用程序:

服务器代码:

ServerSocket serverSocket = new ServerSocket(8080); Socket clientSocket = serverSocket.accept(); BufferedReader input = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); PrintWriter output = new PrintWriter(clientSocket.getOutputStream(), true); while (true) { String message = input.readLine(); if (message == null || message.isEmpty()) { break; } output.println("Server: " + message); }
登录后复制

客户端代码:

Socket clientSocket = new Socket("localhost", 8080); BufferedReader input = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); PrintWriter output = new PrintWriter(clientSocket.getOutputStream(), true); output.println("Hello from client"); String serverMessage = input.readLine(); System.out.println(serverMessage);
登录后复制

以上是Java网络编程中如何配置和使用套接字?的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!