在Java中,可以使用ServerSocket类来监听端口并接收数据。
以下是一个简单的示例代码:
import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; public class Server { public static void main(String[] args) throws IOException { // 创建ServerSocket对象,指定监听的端口号 ServerSocket serverSocket = new ServerSocket(8888); System.out.println("服务器启动,等待客户端连接..."); // 监听端口并接收客户端连接 Socket socket = serverSocket.accept(); System.out.println("客户端连接成功!"); // 获取输入流,用于接收数据 InputStream inputStream = socket.getInputStream(); // 创建一个byte数组,用于存放接收到的数据 byte[] buffer = new byte[1024]; int length; // 循环读取数据 while ((length = inputStream.read(buffer)) != -1) { // 处理接收到的数据 String data = https://www.yisu.com/ask/new String(buffer, 0, length);"接收到客户端数据:" + data); } // 关闭连接 socket.close(); serverSocket.close(); } }
在上述代码中,我们首先创建了一个ServerSocket对象,并指定要监听的端口号。然后使用accept()方法监听端口并接收客户端连接,返回一个表示连接的Socket对象。接下来,我们通过Socket对象获取输入流,然后使用输入流的read()方法来读取客户端发送的数据。最后,我们对接收到的数据进行处理,并在控制台上打印出来。最后,记得在程序结束后关闭连接。
这只是一个简单的示例,真实的使用场景中可能需要考虑多线程、异常处理等。