亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Java中基于Socket的網(wǎng)絡編程

        2013-01-01 00:00:00洪世勇
        軟件工程 2013年2期

        摘要:本文介紹了Socket的網(wǎng)絡通信模式,講述了創(chuàng)建Socket的基本步驟和構造方法,并通過一個小程序?qū)崿F(xiàn)了Java中基于Socket的簡單網(wǎng)絡編程。

        關鍵詞:Java;Socket;ServerSocket;通信

        一、 引言

        隨著計算機網(wǎng)絡的快速發(fā)展,帶動了Java語言的發(fā)展,Java越來越成為網(wǎng)絡上廣為流行的編程語言。Java是由Sun Microsystems公司于20世紀末推出的一門面向?qū)ο蟪绦蛟O計語言(簡稱Java語言)。用Java實現(xiàn)的支持Java applet的瀏覽器充分的展示出了Java的優(yōu)勢和魅力:跨各種操作系平臺、實現(xiàn)動態(tài)的Web技術、安全的語言權限檢查環(huán)境、JDK類庫提供的豐富網(wǎng)絡類庫,易于實現(xiàn)網(wǎng)絡編程的開發(fā)。Socket是Java網(wǎng)絡編程的基礎,本文就是從套接字的基本原理和使用方法出發(fā),并通過一個簡單網(wǎng)絡通信例子,講述在Java中使用Socket進行網(wǎng)絡編程。[1]

        二、Socket通信的基本原理

        1.什么是Socket

        Socket通常也稱作“套接字”,當網(wǎng)絡上有兩個程序要進行會話的時候,就會通過一個端口發(fā)送請求或者應答命令,這個端口就是套接字。通常用Socket建立客戶端和服務端的雙向連接。在網(wǎng)絡通信中Socket主要是基于TCP/IP協(xié)議標準,它是在TCP/IP協(xié)議中使用很廣泛的一個編程界面,在通信過程中Socket的端口號和IP地址都是唯一確定的。

        2.Socket的通信模式

        Socket是基于C/S模式通信的,即面向客戶/服務器模型設計。在客戶端,使用套接字對特定網(wǎng)絡位置的某一服務器端口發(fā)出請求連接,當連接成功后就會開始進行會話,然后才關閉端口??蛻舳说亩丝谕ǔG闆r下是動態(tài)和隨機分配的。在服務器端,我們首先需要監(jiān)聽端口,使用ServerSocket來指定需要進行通訊的端口,在客戶請求道端口后成功后,服務器端進行連接,完成會話,在雙方通訊完畢后,關閉連接。

        在任何一個完善的Socket工作過程中,都要按照以下幾個基本的步驟,才能建立正常的通信機制。首先創(chuàng)建一個Socket;然后進行連接請求道套接字的I/O流;再次依據(jù)通訊過程中采用的協(xié)議標準對套接字進行讀或?qū)懙牟僮?;最后完成會話并關閉Socket。

        3.創(chuàng)建Socket

        我們利用java.net包中的兩個類Socket和ServerSocket來分別建立到客戶端和服務端的套接字連接??蛻舳顺绦蚴褂肧ocket類建立到服務器的套接字連接。其構造方法如下:

        public Socket():通過系統(tǒng)默認類型的SocketImpl創(chuàng)建未連接套接字。

        public Socket(String host, int prot);連接到指定的主機和端口號。

        Socket(InetAddress address, int port, boolean stream);連接到指定IP地址,主機端口和數(shù)據(jù)報方式的流。[2]

        服務器端程序任務主要是監(jiān)聽,等待客戶機連接,建立一個等待客戶端連接的ServerSocket套接字。構造方法如下:

        public ServerSocket(int port); 連接到的特定端口。public ServerSocket(int port, int backlog); 在聲明構造方法時候,必須對創(chuàng)建的 Socket或ServerSocket捕獲異?;驋伋隼?。

        三、基于Socket的簡單通信實現(xiàn)

        服務端的程序:

        public class ServerDemo{

        public static void main(String args[]) {

        try{

        ServerSocket ser=1;

        ser=new ServerSocket(8080);//在端口8080監(jiān)聽請求

        Socket client=server.accept();//保存接受請求信息

        System.out.println(\"IP:\"+client.getInetAddress());

        System.out.println(\"Port:\"+client.getPort());

        ser.close();//關閉Socket

        }catch(IOException e) {

        System.out.println(\"Error.\"+e);

        }

        }

        }

        以上程序是一個基于Socket的簡單通信。

        四、結語

        這是一個簡單的基于Socket的通信應用,展現(xiàn)了Socket實現(xiàn)網(wǎng)絡編程的易實現(xiàn)性和其基本的通信原理,還有很多更深層的功能需要去挖掘,才能顯示其強大的網(wǎng)絡編程能力。

        參考文獻

        [1] 王東.基于Java的系統(tǒng)網(wǎng)絡編程[J].信息系統(tǒng)工程,2010,22(11):129-130;144.

        [2] 江小燕.Java網(wǎng)絡編程的研究[J].電腦編程技巧與維護,2010,16(14): 6;18.

        日本女优在线一区二区三区| 欧美巨鞭大战丰满少妇| 成人午夜福利视频| 国产成人亚洲精品无码h在线| 久久无码高潮喷水免费看| 在线不卡中文字幕福利| 东北老熟女被弄的嗷嗷叫高潮| 极品尤物人妻堕落沉沦| 最爽无遮挡行房视频| 四虎永久免费一级毛片| 日韩精品成人无码AV片| 亚洲av成人无网码天堂| 亚洲成av人片在www鸭子| 久久九九国产精品怡红院| 国产精品亚洲午夜不卡| 国产精品视频免费一区二区三区 | 一级片久久| 中文字幕你懂的一区二区| 国产黑丝美腿在线观看| 国产精品人妻一码二码尿失禁 | 亚洲色成人网一二三区| 国产一区二区三区av观看| 亚洲s色大片在线观看| 亚洲国产人在线播放首页| 麻豆久久久国内精品| 福利利视频在线观看免费| 人妻少妇乱子伦精品| 亚洲欧美日韩综合在线观看| 国产av熟女一区二区三区蜜臀| 亚洲日韩小电影在线观看| 又硬又粗又大一区二区三区视频| 无码无在线观看| 午夜国产视频一区二区三区| 人妻无码αv中文字幕久久琪琪布| 国产在线一区二区三区av| 国产中文色婷婷久久久精品| 精品国产av色一区二区深夜久久| 婷婷丁香五月亚洲| 日本老熟女一区二区三区| 无码gogo大胆啪啪艺术| 911精品国产91久久久久|