zoukankan      html  css  js  c++  java
  • socket经典案例-发送数据

    一:客户端向服务端发送数据。

    服务端:

    package com.company.s;
    
    import java.io.*;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    public class Server {
        public static void main(String[] args)  throws IOException{
            char[] charArray=new char[3];
            ServerSocket serverSocket=new ServerSocket(8088);
            System.out.println("accept begin="+System.currentTimeMillis());
            Socket socket=serverSocket.accept();
            System.out.println("accept end="+System.currentTimeMillis());
            InputStream inputStream=socket.getInputStream();
            InputStreamReader inputStreamReader=new InputStreamReader(inputStream);
            System.out.println("read begin "+System.currentTimeMillis());
            int readLength=inputStreamReader.read(charArray);//阻塞
            while (readLength!=-1){
                String newString=new String(charArray,0,readLength);
                System.out.println(newString);
                readLength=inputStreamReader.read(charArray);
            }
            System.out.println("read end "+System.currentTimeMillis());
            inputStream.close();
            socket.close();
            serverSocket.close();
        }
    }

    2.客户端代码:

    package com.company.s;
    
    import java.io.OutputStream;
    import java.net.Socket;
    
    public class Client {
        public static void main(String[] args) throws Exception{
            System.out.println("socket begin "+System.currentTimeMillis());
            Socket socket=new Socket("localhost",8088);
            System.out.println("socket end "+System.currentTimeMillis());
            Thread.sleep(3000);
            OutputStream outputStream=socket.getOutputStream();
            outputStream.write("我是中国人".getBytes());
            outputStream.close();
            socket.close();
        }
    }

     二:服务端向客户端发送数据

    1.server.java

    package com.company.s;
    
    import java.io.*;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    public class Server {
        public static void main(String[] args)  throws IOException{
            ServerSocket serverSocket=new ServerSocket(8088);
            System.out.println("accept begin="+System.currentTimeMillis());
            Socket socket=serverSocket.accept();
            System.out.println("accept end="+System.currentTimeMillis());
           OutputStream outputStream=socket.getOutputStream();
           outputStream.write("我是思思博士".getBytes());
           outputStream.close();
           socket.close();
           serverSocket.close();
        }
    }

    2.客户端代码:

    package com.company.s;
    
    
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.net.Socket;
    
    public class Client {
        public static void main(String[] args) throws Exception{
            System.out.println("socket begin "+System.currentTimeMillis());
            Socket socket=new Socket("localhost",8088);
            System.out.println("socket end "+System.currentTimeMillis());
            char[] charBuffer=new char[3];
            InputStream inputStream=socket.getInputStream();
            InputStreamReader inputStreamReader=new InputStreamReader(inputStream);
            System.out.println("serverB begin "+System.currentTimeMillis());
            int readLength=inputStreamReader.read(charBuffer);
            System.out.println("serverB end "+System.currentTimeMillis());
            while (readLength!=-1){
                System.out.println(new String(charBuffer,0,readLength));
                readLength=inputStreamReader.read(charBuffer);
            }
            System.out.println();
            inputStream.close();
            socket.close();
    
            System.out.println("client 运行结束="+System.currentTimeMillis());
    
        }
    }
  • 相关阅读:
    第二阶段站立会09
    第二阶段站立会08
    《大道至简》阅读笔记3
    《大道至简》阅读笔记2
    《大道至简》阅读笔记1
    站立会议9
    站立会议8
    站立会议6
    站立会议7
    站立会议5
  • 原文地址:https://www.cnblogs.com/guoyansi19900907/p/10971323.html
Copyright © 2011-2022 走看看