网络编程:JavaSocket通信问题案例

原创 - 日理万妓 2024-09-26 23:12 118阅读 0赞

在Java编程中,Socket是一种用于在网络上进行双向通信的API。以下是一个简单的Socket通信问题案例:

客户端(发送方)代码:

  1. import java.io.*;
  2. import java.net.*;
  3. public class Client {
  4. public static void main(String[] args) {
  5. try {
  6. // 创建连接
  7. Socket socket = new Socket("localhost", 1234); // 地址为localhost,端口为1234
  8. // 获取输出流
  9. PrintWriter writer = new PrintWriter(socket.getOutputStream(), true));
  10. // 发送数据
  11. writer.println("Hello from Client!");
  12. // 关闭资源
  13. writer.close();
  14. socket.close();
  15. } catch (IOException e) {
  16. e.printStackTrace();
  17. }
  18. }
  19. }

服务器端(接收方)代码:

  1. import java.io.*;
  2. import java.net.*;
  3. public class Server {
  4. public static void main(String[] args) throws IOException {
  5. ServerSocket server = new ServerSocket(1234); // 端口为1234
  6. System.out.println("Server is listening...");
  7. Socket client = server.accept(); // 接受客户端连接
  8. BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()))); // 从客户端接收数据
  9. PrintWriter writer = new PrintWriter(client.getOutputStream(), true)); // 向客户端发送数据
  10. String message;
  11. while ((message = in.readLine()) != null) {
  12. System.out.println("Received from Client: " + message);
  13. writer.println("Server received the message. Sending acknowledgement back to client.");
  14. }
  15. writer.close();
  16. in.close();
  17. client.close();
  18. server.close();
  19. }
  20. }

案例中,客户端向服务器发送一条消息,然后接收服务器的确认回话。这个简单的通信过程展示了Socket编程的基本应用。

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

发表评论

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

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

相关阅读