国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

簡單的java socket客戶端和服務端示例

2019-11-26 15:43:17
字體:
來源:轉載
供稿:網友

客戶端

復制代碼 代碼如下:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;

public class MyClient { 
    public static void main(String[] args) throws Exception { 
        Socket socket = new Socket("localhost", 10000); 
        BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())); 
        PrintWriter out = new PrintWriter(socket.getOutputStream()); 
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); 

        while (true) { 
            String msg = reader.readLine(); 
            out.println(msg); 
            out.flush(); 
            if (msg.equals("bye")) { 
                break; 
            } 
            System.out.println(in.readLine()); 
        } 
        socket.close(); 
    } 

服務端

復制代碼 代碼如下:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

public class MyServer { 
    public static void main(String[] args) throws IOException { 
        ServerSocket server = new ServerSocket(10000); 

        while (true) { 
            Socket socket = server.accept(); 
            invoke(socket); 
        } 
    } 

    private static void invoke(final Socket client) throws IOException { 
        new Thread(new Runnable() { 
            public void run() { 
                BufferedReader in = null; 
                PrintWriter out = null; 
                try { 
                    in = new BufferedReader(new InputStreamReader(client.getInputStream())); 
                    out = new PrintWriter(client.getOutputStream()); 

                    while (true) { 
                        String msg = in.readLine(); 
                        System.out.println(msg); 
                        out.println("Server received " + msg); 
                        out.flush(); 
                        if (msg.equals("bye")) { 
                            break; 
                        } 
                    } 
                } catch(IOException ex) { 
                    ex.printStackTrace(); 
                } finally { 
                    try { 
                        in.close(); 
                    } catch (Exception e) {} 
                    try { 
                        out.close(); 
                    } catch (Exception e) {} 
                    try { 
                        client.close(); 
                    } catch (Exception e) {} 
                } 
            } 
        }).start(); 
    } 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东乡族自治县| 西充县| 寿光市| 崇阳县| 海晏县| 嘉善县| 晋中市| 凤庆县| 泾川县| 禹城市| 东乡族自治县| 郴州市| 寻甸| 和林格尔县| 盐源县| 临沧市| 登封市| 都兰县| 贵州省| 北安市| 岳西县| 安达市| 合川市| 运城市| 溆浦县| 承德市| 庆云县| 安阳县| 天台县| 龙山县| 邹城市| 都安| 南丰县| 田林县| 惠州市| 汤原县| 丹巴县| 精河县| 三门县| 资兴市| 澄迈县|