前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TCP协议的通信实例

TCP协议的通信实例

作者头像
马克java社区
修改2021-05-11 10:05:07
4690
修改2021-05-11 10:05:07
举报
文章被收录于专栏:java大数据

TCP协议的通信实例

马克-to-win:我们首先给出一个最最简单的helloworld通信程序。让大家体会一把两台机器的通信,大家之后就可以慢慢把它发展成为聊天程序。马克-to-win:TCP通信有两个类:1)ServerSocket:服务器用它监听进入的连接;2)Socket:双方都用它初始一次连接。一旦客户端申请建立一个连接,ServerSocket就会返回(通过accept()方法)一个对应的服务器端的Socket,以便进行直接通信。从此时起,我们就得到了一对真正的“Socket-Socket”连接,此时可以利用getInputStream()以及getOutputStream()从每个Socket产生对应的 InputStream和OutputStream对象。之后,可按上章介绍的方法对类进行处理,就象原来对待其他任何流对象那样。创建一个 ServerSocket时,只需为其赋予一个端口编号。但在创建一个客户端 Socket时,必须同时赋予IP以及要连接的端口。下面这对程序先运行服务器程序,再运行客户端程序。马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。

例:2.2.1(客户端写,服务器端读)

import java.io.*;

import java.net.*;

public class TestMark_to_win {

    public static final int PORT = 4002;

    public static void main(String[] args) throws IOException {

        ServerSocket s = new ServerSocket(PORT);

        // Blocks until a connection occurs:

        System.out.println("我作为服务器,正等着你");

        Socket socket = s.accept();

        System.out.println("这句开始打印不出来");

        InputStream in = socket.getInputStream();

        int i = in.read();

        System.out.println("Echoing: " + i);

        socket.close();

        s.close();

    }

}

以下是客户端程序:

import java.net.*;

import java.io.*;

public class Test {

    public static void main(String[] args) throws IOException {

        Socket socket = new Socket("localhost", 4002);

        OutputStream out = socket.getOutputStream();

        out.write(97);

        socket.close();

    }

}

更多详情:https://blog.csdn.net/qq_44591615/article/details/109276111

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档