如何Socket通信

使用ServerSocket创建TCP服务端
ServerSocket创建服务端,监听来自客服端发送过来信息。

public ServerSocket(int port)用于指定端口,有效的数值 0 ~ 65535
public ServerSocket(int port, int backlog) backlog 连接队列长度的参数
ServerSocket(int port, int backlog, InetAddress bindAddr) 存在多个IP的情况使用bindAddr确定ServerSocket绑定的IP

 public static void main(String[] args) throws IOException {
        //创建监听获取客户端发送信息,定义端口号为3000
        ServerSocket serverSocket = new ServerSocket(3000);
        while (true){
            /*获取接受到信息*/
            Socket socket = serverSocket.accept();
            /*发送来的消息io流*/
            InputStream in = socket.getInputStream();
            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(in));
            /*接受发送来的信息*/
            String result = bufferedReader.readLine();
            /*打印数据*/
            System.out.print(result);
        }
    }
    

客服端使用Socket进行通信

public Socket(String host, int port) 创建连接指定远程主机IP和端口
public Socket(String host, int port, InetAddress localAddr, int localPort)创建连接适用于本机有多个ip地址

 public  void initSocket(){
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    /*创建连接  */
                    Socket socket=new Socket("192.168.1.5",3000);
//        socket.getInputStream(); 获取服务端发送的数据
//        socket.getOutputStream() ; 客户端发送数据给服务端
                    InputStream in = socket.getInputStream() ;
                    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(in));
                    /*接受发送来的信息*/
                    String result = bufferedReader.readLine();
                    /*打印数据*/
                    System.out.print(result);
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }).start();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

将哥哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值