激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java網絡編程學習java聊天程序代碼分享

java網絡編程學習java聊天程序代碼分享

2019-10-25 13:40java技術網 JAVA教程

java聊天程序代碼分享,大家參考使用吧

代碼如下:


package com.neusoft.edu.socket;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
/**
 * 服務器端代碼
 * 獲取客戶端發送的信息,顯示并且返回對應的回復
 * 1、創建ServerSocket對象
 * 2、調用accept方法獲取客戶端連接
 * 3、使用輸入流讀取客戶端發送的數據
 * 4、使用輸出流向客戶端寫入數據
 * 5、關閉對應的對象
 * @author L
 *
 */
public class ChatServer {
    /**
     * @param args
     */
    public static void main(String[] args) {
        try {
            //1、創建ServerSocket對象,8875為自定義端口號
            ServerSocket server = new ServerSocket(8857);

            //簡單提示
            System.out.println("等待客戶端連接……");

            //2、獲取客戶端連接
            Socket client = server.accept();

            //獲取客戶端的相關信息
            System.out.println(client.getInetAddress().getHostAddress() + "連接上來了……");

            //3.1、定義輸入流和輸出流對象
            BufferedReader in = new BufferedReader(
                    new InputStreamReader(
                            client.getInputStream()));

            //用來獲取從控制臺輸入的數據,將該數據發送給客戶端
            BufferedReader inByServer = new BufferedReader(
                    new InputStreamReader(System.in));

            PrintWriter out = new PrintWriter(client.getOutputStream(), true);

            //讀取到的數據
            String data = null;
            String answer = null;

            //循環和客戶端進行通信
            do
            {
                //3.2、讀取客戶端發送的數據
                data = in.readLine();

                //在服務器端顯示讀取到的數據
                System.out.println("客戶端發送信息:" + data);

                //獲取服務器端要發送給客戶端的信息
                System.out.print("服務器端回復客戶端:");
                answer = inByServer.readLine();

                //3.3、將數據寫入到客戶端
                out.println(answer);
                out.flush();
            }while(!"bye".equals(data));

            //4、關閉相關資源
            out.flush();
            in.close();
            inByServer.close();
            out.close();

            //關閉Socket對象
            client.close();
            server.close();

            System.out.println("服務器端關閉……");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

 

 

復制代碼代碼如下:


package com.neusoft.edu.socket;

 

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

/**
 * 聊天客戶端
 * 1、創建Socket對象
 * 2、寫入數據
 * 3、讀取從服務器端發來的數據
 * 4、關閉
 * @author L
 *
 */
public class ChatClient {

    /**
     * @param args
     */
    public static void main(String[] args) {
        try {
            //1、創建Socket對象,("192.168.1.107", 8857)分別為主機IP和端口號,兩個類端口號要一致
            Socket client = new Socket("192.168.1.107", 8857);

            //2.1、創建輸入流和輸出流對象
            BufferedReader in = new BufferedReader(
                    new InputStreamReader(
                            client.getInputStream()));

            PrintWriter out = new PrintWriter(client.getOutputStream(), true);

            BufferedReader inByClient = new BufferedReader(
                    new InputStreamReader(System.in));

            //服務器端發送的數據
            String data = null;
            //客戶端向服務器端寫入的數據
            String answer = null;

            do
            {
                //2.2、客戶端的讀寫操作
                System.out.print("你說:");
                //獲取要發送給服務器端的數據
                answer = inByClient.readLine();
                //向服務器端寫入數據
                out.println(answer);
                out.flush();

                //獲取服務器端發送的數據
                data = in.readLine();
                //輸出從服務器端獲取的數據
                System.out.println("服務器端返回信息是:" + data);
            }while(!"bye".equals(data));

            //3、關閉
            in.close();
            out.close();
            inByClient.close();
            client.close();

            System.out.println("客戶端關閉……");
        } catch (UnknownHostException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧洲黄色一级视频 | h视频在线观看免费 | 国产一级毛片高清 | 欧美视屏一区二区 | 国产精品视频一区二区噜噜 | 在线成人www免费观看视频 | 精品亚洲福利一区二区 | chinesexxx少妇露脸 | 久久精品视频69 | 国产一国产一级毛片视频 | 成人激情在线 | 亚洲国产精品久久久久久久 | 香蕉国产片| 看免费毛片 | 91免费影片 | www.17c亚洲蜜桃 | 日韩在线播放中文字幕 | 二区视频 | 国产成人免费高清激情视频 | 久久亚洲精品国产一区 | 最新亚洲国产 | 免费看操片 | 国产噜噜噜噜噜久久久久久久久 | 97视频 | 日韩av电影在线观看 | 中文国产在线视频 | 日本中文字幕电影在线观看 | 欧美一级特黄特色大片免费 | 激情久久一区二区 | 姑娘第四集免费看视频 | 久久精精品 | 九九热精品视频在线免费观看 | 国产在线观看一区二区三区 | 日韩一级片毛片 | 操碰97 | 激情视频日韩 | 国产成人精品自拍视频 | 黄色大片在线免费观看 | 黑人一级片 | 久草中文网| 国产精品一区二区手机在线观看 |