Java Socket编程问题:TCP连接案例探析

原创 左手的ㄟ右手 2024-09-19 11:36 157阅读 0赞

在Java Socket编程中,TCP(Transmission Control Protocol)是一种面向连接的通信协议,用于在网络两端建立稳定的连接后进行数据传输。

以下是一个简单的TCP客户端和服务器的示例:

  1. 客户端(SocketServer类):
    ```java
    import java.io.;
    import java.net.
    ;

public class Client {
public static void main(String[] args) throws IOException {
// 创建Socket对象
Socket socket = new Socket(“localhost”, 1234)); //这里的”localhost”是服务器的IP地址,1234是服务端监听的端口

  1. // 获取输出流,用于向服务器发送数据
  2. OutputStream outputStream = socket.getOutputStream();
  3. // 写入数据(例如:Hello Server!)到输出流
  4. outputStream.write("Hello Server!".getBytes());
  5. // 关闭输出流和Socket对象,以释放资源
  6. outputStream.close();
  7. socket.close();
  8. }

}

  1. 2. **服务器**(ServerSocket类):
  2. ```java
  3. import java.io.*;
  4. import java.net.*;
  5. public class Server {
  6. public static void main(String[] args) throws IOException {
  7. // 创建ServerSocket对象,指定监听的端口
  8. ServerSocket serverSocket = new ServerSocket(1234));
  9. // 等待客户端连接
  10. Socket socket = serverSocket.accept();
  11. // 获取输入流,用于从客户端接收数据
  12. InputStream inputStream = socket.getInputStream();
  13. // 读取数据(例如:Hello Client!)到字节数组中
  14. byte[] buffer = new byte[1024];
  15. int bytesRead;
  16. while ((bytesRead = inputStream.read(buffer))) != -1) {
  17. String data = new String(buffer, 0, bytesRead));
  18. System.out.println("Received: " + data);
  19. }
  20. // 关闭输入流和Socket对象
  21. inputStream.close();
  22. socket.close();
  23. // 当服务关闭时,ServerSocket也会被关闭
  24. serverSocket.close();
  25. }
  26. }

以上代码实现了客户端向服务器发送数据,以及服务器向客户端返回数据的TCP连接案例。

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

发表评论

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

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

相关阅读