zoukankan      html  css  js  c++  java
  • Java网络通信编程-TCP

    TCP通信协议是一种可靠的网络协议,它在通信的两端建立一个socket对象。通信之前保证连接已经建立。然后通过socket产生IO流来进行网络通信。TCP发送数据步骤如下:

    1.创建客户端socket对象与指定服务端连接

    2.获取输出流,写数据

    3.释放资源

    客户端代码如下:

    package com.net;
    
    import java.io.IOException;
    import java.io.OutputStream;
    import java.net.Socket;
    
    /**
     * Created by lichangyun on 2020/7/21.
     */
    public class TcpClient {
    
        public static void main(String[] args) throws IOException {
    
    //        客户端对象
            Socket socket = new Socket("127.0.0.1", 10000);
    
    //        获取输出流
            OutputStream os = socket.getOutputStream();
    
    //        写入文件
            os.write("hello TCP".getBytes());
    
    //        释放资源
            os.close();
            socket.close();
    
        }
    }

    TCP接受数据的步骤如下:

    1.创建服务端serversocket对象

    2.监听客户端连接,返回一个socket对象

    3.获取输入流,读数据,并把数据显示在控制台

    4.释放资源

    服务端代码如下:

    package com.net;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    /**
     * Created by lichangyun on 2020/7/21.
     */
    public class TcpServer {
        public static void main(String[] args) throws IOException {
    
    //        TCP服务端对象
            ServerSocket ss = new ServerSocket(10000);
    
    //        接受客户端消息
            Socket accept = ss.accept();
    
    //        获取输入流
            InputStream is = accept.getInputStream();
    
    //        读取数据
            int b;
            while((b=is.read())!=-1){
    
                System.out.print((char)b);
    
            }
    //        释放资源
            ss.close();
            is.close();
            accept.close();
        }
    }
  • 相关阅读:
    记一次笔试题
    模块模式浅析
    在windows上面实现ubuntu的三种方法
    移动端事件(五)—— 函数防抖和函数节流的封装
    一文分清强弱、动态静态类型语言
    为什么前端要学TypeScript
    OpenSSL SSL_read: Connection was reset, errno 10054
    浅悉http1.0 、http1.1和http2.0的区别
    上班一个月的总结
    从浅入深——理解JSONP的实现原理
  • 原文地址:https://www.cnblogs.com/lichangyun/p/13363615.html
Copyright © 2011-2022 走看看