欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java基础ServerSocket、Socket服务端客户端连接的例子

程序员文章站 2024-03-23 10:14:22
...

Java基础ServerSocket、Socket服务端客户端连接的例子)

代码示例

比较基础的代码,配有详细的注释,就不多说了。

服务端代码:

/**
 * 服务端
 *
 * @Author wanglingqiang
 * @Date 2020/7/3 下午5:53
 **/
public class Server {

    public static void main(String[] args) throws IOException {
        // 开启服务,绑定端口
        ServerSocket serverSocket = new ServerSocket(6379);
        // 同步阻塞等待消息
        Socket socket = serverSocket.accept();
        // new一个数组容器
        byte[] bytes = new byte[1024];
        // 获得输入流
        InputStream inputStream = socket.getInputStream();
        // 把输入流的数据读到字节数组容器
        inputStream.read(bytes);
        // 字节数组转成字符串
        String result = new String(bytes);
        // 打印
        System.out.println(result);
        // 关闭socket
        socket.close();
        serverSocket.close();;
    }
}

服务端控制台输出:

Connected to the target VM, address: '127.0.0.1:50425', transport: 'socket'
Hello world.
Disconnected from the target VM, address: '127.0.0.1:50425', transport: 'socket'

客户端代码:

/**
 * 客户端代码
 *
 * @Author wanglingqiang
 * @Date 2020/7/3 下午5:57
 **/
public class Client {
    public static void main(String[] args) throws IOException {
        // 连上Server
        Socket socket = new Socket("127.0.0.1", 6379);
        // 获得输出流
        OutputStream outputStream = socket.getOutputStream();
        // 消息
        String msg = "Hello world.";
        // 向输出流写字节数据
        outputStream.write(msg.getBytes());
        // 关闭socket
        socket.close();
    }
}