zoukankan      html  css  js  c++  java
  • java 网络编程(三)---TCP的基础级示例

        下面是TCP java网络编程的基础示例:

    tcp传输:客户端建立过程的思路:
    1、创建TCP客户端的Socket服务,使用的是socket对象,建议在创建的过程中,就明确了目的地和要连接的主机
    2、如果连接建立成功,说明数据传输通道已经建立,该通道就是Socket的I/O流,是底层建立好的,既然是流,就说明有输入流,就有输出流,要换取就找socket获取相关的流即可,   getInputStream()和getOutputStream()的字节流。
    3、使用输出流,将数据输出;使用输入流,把数据输入。
    4、关闭资源。

    tcp传输:服务器端建立过程的思路:

    1、创建TCP服务端的Socket服务,通过ServerSocket对象创建。
    2、服务器端对外提供提供一个端口,否则客户端无法连接。
    3、获取连接过来的客户端对象。
    4、通过客户端对象获取socket流,读取客户端发来的数据,并打印出来
    5、关闭资源。

    客户端如下:

    public class ClientDemo {

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

    //1.创建TCP客户端的Socket服务
    Socket socket = new Socket("192.168.5.163",10000);
    //2.获取Socket的输出流
    OutputStream outputStream =socket.getOutputStream();
    //3.使用输出流将数据输出
    outputStream.write("tcp 客户端演示".getBytes());
    //4.关闭资源
    socket.close();
    }
    }

    服务器端如下:

    public class ServerDemo {

    public static void main(String[] args) throws IOException {
    //1.创建服务器对象
    ServerSocket ss = new ServerSocket(10000);

    //2.获取连接过来的客户端对象
    Socket s = ss.accept();

    String ip =s.getInetAddress().getHostAddress();

    //3.通过Socket对象获取输入流,获取客户端发送来的数据
    InputStream is =s.getInputStream();

    byte[] buf =new byte[1024];

    int len =is.read(buf);
    String testString =new String(buf,0,len);
    System.out.println( ip +"说:s" + testString);

    s.close();
    ss.close();
    }
    }

  • 相关阅读:
    关于prototype属性的理解
    关于js中原型链的理解
    关于焦点轮播图的优化
    两个动画函数的分析
    JavaScript 实用技巧和写法建议
    Vue SPA 首屏加载优化实践
    带你优雅的使用 icon
    前端本地文件操作与上传
    学习webpack
    Vue 脱坑记
  • 原文地址:https://www.cnblogs.com/loleina/p/5174717.html
Copyright © 2011-2022 走看看