zoukankan      html  css  js  c++  java
  • Java Socket 7部曲

    Client:

    Socket socket = new Socket("localhost", 8882); //初始化socket,如果是server端则多一个ServerSocket的初始化
    
    BufferedReader sis = new BufferedReader(new InputStreamReader(System.in)); //获得系统输入流
    
    BufferedReader is = new BufferedReader(new InputStreamReader(socket.getInputStream())); //得到socket的输入流,就是从server 发送过来的字符
    
    PrintWriter os = new PrintWriter(socket.getOutPutStream()); //得到socket的输出流,就是即将发送到server的管道
    
    string readLine = sis.readLine(); //获得系统输入的一行
    
    while(!readLine.equals("bye")) { 
    
              os.println(readLine); //向服务器发送字符流
    
              os.flush();
    
              System.out.println("Client: " + readLine + "Server: " + is.readLine());
    
              readLine = sis.readLine();
    
        }
    
    is.close(); // 关闭流
    
    os.close();
    
    socket.close();

    Server:

    ServerSocket server = new ServerSocket(8882);
    
    Socket socket = server.accept(); //初始化socket,server端多一个ServerSocket的初始化
    
    BufferedReader sis = new BufferedReader(new InputStreamReader(System.in)); //获得系统输入流
    
    BufferedReader is = new BufferedReader(new InputStreamReader(socket.getInputStream())); //得到socket的输入流,就是从server 发送过来的字符
    
    PrintWriter os = new PrintWriter(socket.getOutPutStream()); //得到socket的输出流,就是即将发送到server的管道
    
    string readLine = sis.readLine(); //获得系统输入的一行
    
    while(!readLine.equals("bye")) { 
    
              os.println(readLine); //向服务器发送字符流
    
              os.flush();
    
              System.out.println("Client: " + readLine + "Server: " + is.readLine());
    
              readLine = sis.readLine();
    
        }
    
    is.close(); // 关闭流
    
    os.close();
    
    socket.close();
    
    

    MultiThread SocketServer:

    public SocketServer extends Thread {
    
         public static void main(String[] args) {
    
              ServerSocket server = new ServerSocket(8882);
    
              while(true) {
    
                        Socket socket = server.accept();
    
              }
    
         }
    
         public void run() {
    
              // Left 6 steps
    
         }
    
    }
    路慢慢其休远羲,吾将上下而求所
  • 相关阅读:
    zabbix 表结构详情(基本)
    服务器监控zabbix
    服务器启动与关闭
    查看mysql中所有表的数据记录
    linux 常用进程使用命令
    linux mysql access denied for user ‘root’@’localhost'(using password:YES)
    初次使用IDEA的相关技巧
    javaweb回顾第十二篇监听器
    javaweb回顾第十一篇过滤器(附实现中文乱码问题)
    javaweb回顾第十篇JSTL
  • 原文地址:https://www.cnblogs.com/garinzhang/p/2550022.html
Copyright © 2011-2022 走看看