java实现socket通信

问题描述:需要客户端发送消息给服务器端,之后服务器端向客户端写入数据

服务器端

import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;

public class Server01 {
    public static void main(String[] args) throws IOException {
        //创建一个服务器端的Socket
        ServerSocket serverSocket = new ServerSocket(8000);
        System.out.println("服务器已经启动,等待客户端连接");
        //侦听,如果连接成功,则返回一个Socket对象
        Socket socket = serverSocket.accept();

        //读取客户端的数据
        BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
        String str = br.readLine();
        System.out.println("接受到客户端的消息:");
        System.out.println(str);

        //服务器向客户端写入数据
        PrintStream ps=new PrintStream(new BufferedOutputStream(socket.getOutputStream()));
        ps.println("you are so cute I like you so much");
        ps.flush();
        ps.close();
        br.close();
    }
}

客户端

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

public class Client01 {
    public static void main(String[] args) throws IOException {
        Socket socket = new Socket("localhost",8000);
        PrintStream ps=new PrintStream(new BufferedOutputStream(socket.getOutputStream()));
        BufferedReader br=new BufferedReader(new InputStreamReader(socket.getInputStream()));

        ps.println("hello word!!");
        ps.flush();

        String info=br.readLine();
        System.out.println(info);
        ps.close();
        br.close();
    }
}

 

你可能感兴趣的:(学习笔记)