• Java Socket TCP编程


     1 package com;
     2 
     3 import java.io.*;
     4 import java.net.ServerSocket;
     5 import java.net.Socket;
     6 
     7 /**
     8  * Socket Server
     9  * <p>
    10  * Created by Administrator on 2018/5/2.
    11  */
    12 public class Server {
    13 
    14     public static void main(String[] args) {
    15 
    16         try {
    17 
    18             // 1.初始化服务端socket连接,并监听8888端口的socket请求
    19             ServerSocket serverSocket = new ServerSocket(8888);
    20 
    21             System.out.println("****** I am Server, now begin to wait the client ******");
    22             Socket socket = serverSocket.accept();
    23 
    24             // 2.server接收消息
    25             InputStream inputStream = socket.getInputStream();
    26             InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
    27             BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
    28 
    29             String str;
    30             if ((str = bufferedReader.readLine()) != null) {
    31                 System.out.println("I am Server, now get message from Client: " + str);
    32             }
    33             socket.shutdownInput();
    34 
    35             // 3.server发送消息
    36             OutputStream outputStream = socket.getOutputStream();
    37             PrintWriter printWriter = new PrintWriter(outputStream);
    38             printWriter.write("[welcome to you!]");
    39             printWriter.flush();
    40 
    41             // 4.关闭资源
    42             printWriter.close();
    43             outputStream.close();
    44 
    45             bufferedReader.close();
    46             inputStreamReader.close();
    47             inputStream.close();
    48             socket.close();
    49             serverSocket.close();
    50 
    51         } catch (IOException e) {
    52             e.printStackTrace();
    53         }
    54     }
    55 
    56 }
     1 package com;
     2 
     3 import java.io.*;
     4 import java.net.Socket;
     5 
     6 /**
     7  * Socket Client
     8  * <p>
     9  * Created by Administrator on 2018/5/2.
    10  */
    11 public class Client {
    12 
    13     public static void main(String[] args) {
    14 
    15         try {
    16 
    17             // 1.初始化客户端socket连接
    18             Socket socket = new Socket("localhost", 8888);
    19 
    20             // 2.client发送消息
    21             OutputStream outputStream = socket.getOutputStream();
    22             PrintWriter printWriter = new PrintWriter(outputStream);
    23             printWriter.write("[name:tom, pwd:123]");
    24             printWriter.flush();
    25             socket.shutdownOutput();
    26 
    27             // 3.client接收消息
    28             InputStream inputStream = socket.getInputStream();
    29             InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
    30             BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
    31             String str;
    32             while ((str = bufferedReader.readLine()) != null) {
    33                 System.out.println("I am Client, now get message from Server:" + str);
    34             }
    35 
    36             // 4.关闭资源
    37             bufferedReader.close();
    38             inputStreamReader.close();
    39             inputStream.close();
    40 
    41             printWriter.close();
    42             outputStream.close();
    43             socket.close();
    44 
    45         } catch (IOException e) {
    46             e.printStackTrace();
    47         }
    48     }
    49 }
  • 相关阅读:
    windows XP 下的DTRACE 跟踪 学习
    copy to tmp table
    快麦
    SQL SERVER BOOK
    启锐电子面单驱动
    grep---find
    mysql中kill掉所有锁表的进程
    sqlserverinternals.com
    从顺序随机I/O原理来讨论MYSQL MRR NLJ BNL BKA
    解析MYSQL BINLOG二进制格式
  • 原文地址:https://www.cnblogs.com/jiangyi-uestc/p/8983379.html
Copyright © 2020-2023  润新知