117.info
人生若只如初见

Java怎么监听接入的网络连接

要监听接入的网络连接,可以使用Java的Socket编程。

以下是一个简单的示例代码,演示了如何使用Java Socket监听接入的网络连接:

import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class NetworkListener {

    public static void main(String[] args) {
        try {
            // 创建ServerSocket,指定监听的端口
            ServerSocket serverSocket = new ServerSocket(8080);

            System.out.println("Listening for incoming connections...");

            while (true) {
                // 接收客户端的连接请求
                Socket socket = serverSocket.accept();

                // 创建一个新线程处理每个连接
                Thread thread = new Thread(() -> {
                    try {
                        // 获取输入流,读取客户端发送的数据
                        InputStream inputStream = socket.getInputStream();
                        byte[] buffer = new byte[1024];
                        int bytesRead;
                        StringBuilder stringBuilder = new StringBuilder();
                        while ((bytesRead = inputStream.read(buffer)) != -1) {
                            stringBuilder.append(new String(buffer, 0, bytesRead));
                        }

                        System.out.println("Received data: " + stringBuilder.toString());

                        // 关闭连接
                        socket.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                });

                thread.start();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

此代码创建了一个ServerSocket对象,并指定要监听的端口(这里使用8080)。然后,通过调用accept()方法接收客户端的连接请求。每当有新的连接接入时,会创建一个新的线程来处理该连接。在处理线程中,可以获取输入流,读取客户端发送的数据,然后进行相应的处理。最后,通过调用socket.close()关闭连接。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe92bAzsLBQdUDVY.html

推荐文章

  • java中textarea的方法怎么使用

    在Java中,可以使用javax.swing.JTextArea类来创建和操作文本区域。
    以下是一些常用的JTextArea方法的使用示例: 创建一个JTextArea对象: JTextArea textA...

  • java中使用事务要注意哪些事项

    在Java中使用事务时,需要注意以下事项: 选择合适的事务管理器:Java中常用的事务管理器有JDBC事务、Spring事务、JTA事务等,需要根据项目的具体需求选择合适的...

  • java中怎么给textarea赋值

    在Java中,可以通过调用setText()方法来给JTextArea赋值。以下是一个示例代码:
    import javax.swing.JFrame;
    import javax.swing.JTextArea; public c...

  • JAVA枚举包含的内容有哪些

    在Java中,枚举包含以下内容: 枚举常量:枚举常量是枚举类的具体实例,它们是枚举类的唯一实例。每个枚举常量都有一个名称和一个值。 枚举构造方法:枚举类可以...

  • python如何生成矩阵

    在Python中,可以使用列表嵌套的方式来生成矩阵。以下是一些生成矩阵的方法: 手动创建矩阵: matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 使用列表生成式: matr...

  • linux万能处理的方法是什么

    Linux操作系统具有强大的处理能力,可以使用以下方法处理各种问题: 命令行工具:Linux提供了大量的命令行工具,可以进行文件操作、文本处理、网络管理等。常用的...

  • spring集成mongodb的方法是什么

    要在Spring中集成MongoDB,可以按照以下步骤进行操作: 添加MongoDB依赖:在pom.xml文件中添加spring-boot-starter-data-mongodb依赖。 org.springframework.boo...

  • centos7离线安装gcc怎么实现

    要在CentOS 7上离线安装GCC,可以按照以下步骤进行操作: 在一台已经联网的机器上下载GCC的源代码包(tar.gz格式)。可以从GCC的官方网站(https://gcc.gnu.org/...