Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

socket java

作者:徒醉了清风   发布日期:2025-12-29   浏览:43

import java.io.*;
import java.net.*;

public class SocketExample {

    // 服务器端代码示例
    public static void main(String[] args) throws IOException {
        // 创建一个ServerSocket对象,监听端口8080
        ServerSocket serverSocket = new ServerSocket(8080);
        System.out.println("服务器已启动,等待客户端连接...");

        // 接受客户端的连接请求
        Socket clientSocket = serverSocket.accept();
        System.out.println("客户端已连接");

        // 获取输入流和输出流
        PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
        BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));

        // 读取客户端发送的消息
        String inputLine;
        while ((inputLine = in.readLine()) != null) {
            System.out.println("收到客户端消息: " + inputLine);
            // 向客户端发送响应
            out.println("服务器已收到你的消息: " + inputLine);
        }

        // 关闭资源
        in.close();
        out.close();
        clientSocket.close();
        serverSocket.close();
    }
}

解释说明:

  1. ServerSocket:用于创建服务器端套接字,监听指定端口(如8080),等待客户端连接。
  2. accept():阻塞方法,直到有客户端连接时返回一个新的Socket对象,代表与该客户端的连接。
  3. PrintWriter 和 BufferedReader:分别用于向客户端发送数据和从客户端接收数据。PrintWriter用于输出流,BufferedReader用于输入流。
  4. 读取和响应:通过循环读取客户端发送的数据,并将响应发送回客户端。
  5. 关闭资源:确保在通信结束后关闭所有打开的流和套接字,以释放资源。

如果你需要客户端代码或其他更复杂的示例,请告知!

上一篇:java或与非的符号

下一篇:java int to string

大家都在看

java url decode

java判断是windows还是linux

java连接数据库的代码

java date类型比较大小

java djl

ubuntu 卸载java

es java api

java list 查找

java 解压rar

java读取excel中的图片

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站