Java网络编程:Socket通信简单案例

原创 痛定思痛。 2024-11-28 02:03 44阅读 0赞

在Java中,Socket是一种用于客户端和服务器之间双向通信的API。以下是一个简单的Socket通信案例:

  1. 客户端(Client.java):
  1. import java.io.*;
  2. import java.net.*;
  3. public class Client {
  4. public static void main(String[] args) throws IOException {
  5. // 创建一个Socket对象
  6. Socket socket = new Socket("localhost", 1234); // "localhost"是服务器地址,1234是你设置的端口号
  7. // 获取输出流,用于向服务器发送数据
  8. OutputStream outputStream = socket.getOutputStream();
  9. // 写数据到输出流
  10. PrintWriter writer = new PrintWriter(outputStream, true));
  11. writer.println("Hello Server!"); // 发送一条消息
  12. // 关闭资源
  13. writer.close();
  14. socket.close();
  15. }
  16. }
  1. 服务器(Server.java):
  1. import java.io.*;
  2. import java.net.*;
  3. public class Server {
  4. public static void main(String[] args) throws IOException {
  5. // 创建一个Socket监听器,用于接收客户端连接请求
  6. ServerSocket serverSocket = new ServerSocket(1234); // 设置端口号
  7. // 等待客户端连接
  8. Socket clientSocket = serverSocket.accept();
  9. // 获取输入流,用于从客户端接收数据
  10. InputStream inputStream = clientSocket.getInputStream();
  11. // 创建一个字节缓冲区,用于暂时存储读取到的数据
  12. byte[] buffer = new byte[1024]]; // 设置缓冲区大小
  13. // 从输入流读取数据,并写入到缓冲区
  14. int count;
  15. while ((count = inputStream.read(buffer))) != -1) {
  16. // 处理读取到的数据,这里只是简单地打印出来
  17. System.out.println(new String(buffer, 0, count)) + " from client");
  18. }
  19. // 关闭资源
  20. clientSocket.close();
  21. serverSocket.close();
  22. }
  23. }

以上两个Java文件分别代表客户端和服务器。通过运行这两个程序,客户端会向服务器发送一条消息,然后服务器会打印收到的消息,并关闭连接。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,44人围观)

还没有评论,来说两句吧...

相关阅读