国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議

這篇具有很好參考價值的文章主要介紹了【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

??什么是網(wǎng)絡(luò)編程

在網(wǎng)絡(luò)通信協(xié)議下,不同計算機上運行的程序,進行的數(shù)據(jù)傳輸

簡而言之,就是可以把自己電腦上的資料通過代碼傳到其他人的電腦上

??常見的軟件架構(gòu)

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

?BS架構(gòu)的優(yōu)缺點

(對畫質(zhì)要求不高時使用)

  1. 不需要開發(fā)客戶端,只需要頁面+服務(wù)端
  2. 用戶不需要下載,打開瀏覽器就能用
  3. 如果應(yīng)用過大,用戶體驗會受到影響

?CS架構(gòu)的優(yōu)缺點

(對畫質(zhì)要求高時使用)

  1. 畫面可以做的非常精美,用戶體驗好
  2. 需要開發(fā)客戶端,也需要開發(fā)服務(wù)端
  3. 用戶需要下載和更新的時候太麻煩

??網(wǎng)絡(luò)編程三要素

  1. 確定對方在互聯(lián)網(wǎng)的地址(IP
  2. 確定接收數(shù)據(jù)的軟件(端口號
  3. 確定網(wǎng)絡(luò)傳輸?shù)囊?guī)則(協(xié)議

??InetAddress類的使用

?確定主機名稱的IP地址

主機名可以是機器名稱,也可以是IP地址

import java.net.InetAddress;
import java.net.UnknownHostException;

public class Demo {
    public static void main(String[] args) throws UnknownHostException {
        InetAddress address=InetAddress.getByName("192.168.125.2");
        System.out.println(address);
    }
}

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

?查看主機名

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

?獲取此IP地址的主機名

import java.net.InetAddress;
import java.net.UnknownHostException;

public class Demo {
    public static void main(String[] args) throws UnknownHostException {
        InetAddress address=InetAddress.getByName("千尋");

        String name=address.getHostName();
        System.out.println(name);
    }
}

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

?返回文本顯示中的IP地址字符串

import java.net.InetAddress;
import java.net.UnknownHostException;

public class Demo {
    public static void main(String[] args) throws UnknownHostException {
        InetAddress address=InetAddress.getByName("千尋");

        String ip=address.getHostAddress();
        System.out.println(ip);
    }
}

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

?IP

Internet Protocol ,是互聯(lián)網(wǎng)協(xié)議地址,也稱IP地址

設(shè)備(不一定是電腦)在網(wǎng)絡(luò)中的地址,是唯一的標(biāo)識

??IPv4

Internet Protocol version 4,互聯(lián)網(wǎng)通信協(xié)議第四版
采用32為地址長度,分為4組
【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

但是逐漸發(fā)現(xiàn)IPv4分配的地址不夠用了,就出現(xiàn)了IPv6

??IPv6

Internet Protocol version6,互聯(lián)網(wǎng)通信協(xié)議第六版
采用128為地址長度,分為8組
IPv6可以為地球上的每一粒沙子都設(shè)定IP
【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

??特殊的IP

127.0.0.1(永遠(yuǎn)表示本機)

?端口號

應(yīng)用程序在設(shè)備中的唯一標(biāo)識
【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

?協(xié)議

數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)囊?guī)則,常見的協(xié)議有UDP,TCP,http,https,ftp
【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

??????UDP發(fā)送數(shù)據(jù)

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

import java.io.IOException;
import java.net.*;

public class SendMessageDemo {
    public static void main(String[] args) throws IOException {
        DatagramSocket ds=new DatagramSocket();

        //打包數(shù)據(jù)
        String str="你好呀";
        byte[] bytes=str.getBytes();
        InetAddress address=InetAddress.getByName("127.0.0.1");
        int port=10086;

        DatagramPacket dp=new DatagramPacket(bytes,bytes.length,address,port);

        //發(fā)送數(shù)據(jù)
        ds.send(dp);

        //釋放資源
        ds.close();
    }
}

??????UDP接收數(shù)據(jù)

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;

public class ReceiveMessageDemo {
    public static void main(String[] args) throws IOException {
        //綁定的這個端口一定要和發(fā)送時的端口保持一致
        DatagramSocket ds=new DatagramSocket(10086);

        //接收數(shù)據(jù)包
        byte[] bytes=new byte[1024];
            //接收數(shù)據(jù)
        DatagramPacket dp=new DatagramPacket(bytes,bytes.length);
        ds.receive(dp);

        //解析數(shù)據(jù)包
        byte[] data=dp.getData();
            //獲得多少字節(jié)的數(shù)據(jù)
        int len=dp.getLength();
            //是從哪一臺電腦發(fā)過來的
        InetAddress address=dp.getAddress();
            //從哪個端口發(fā)過來的
        int port=dp.getPort();

        System.out.println("接收到數(shù)據(jù)"+new String(data,0,len));//把字節(jié)數(shù)組變?yōu)樽址?/span>
        System.out.println("該數(shù)據(jù)是從"+address+"這臺電腦中的"+port+"這個端口發(fā)出的");

        //釋放資源
        ds.close();
    }
}

?運行代碼

先運行接收端,再運行發(fā)送端

【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議
網(wǎng)絡(luò)編程作為計算機科學(xué)領(lǐng)域中的重要分支,扮演著連接世界的橋梁和紐帶的角色。通過網(wǎng)絡(luò)編程,我們可以在不同的計算機之間進行數(shù)據(jù)傳輸和通信,實現(xiàn)信息的共享與交流。無論是互聯(lián)網(wǎng)的發(fā)展、智能設(shè)備的互聯(lián)、大數(shù)據(jù)的處理,還是人工智能的應(yīng)用,都少不了網(wǎng)絡(luò)編程的支持。隨著技術(shù)的不斷進步和應(yīng)用場景的不斷擴展,網(wǎng)絡(luò)編程將呈現(xiàn)出更加廣闊的前景。未來,我們可以期待更高效、更安全、更可靠的網(wǎng)絡(luò)通信協(xié)議的出現(xiàn),以滿足日益增長的數(shù)據(jù)傳輸需求。同時,隨著物聯(lián)網(wǎng)、云計算、區(qū)塊鏈等新興技術(shù)的不斷發(fā)展,網(wǎng)絡(luò)編程也將與之緊密結(jié)合,創(chuàng)造出更多的可能性。然而,網(wǎng)絡(luò)編程也面臨著一些挑戰(zhàn)和問題。網(wǎng)絡(luò)安全性、數(shù)據(jù)隱私保護、網(wǎng)絡(luò)擁堵等都是當(dāng)前需要關(guān)注和解決的難題。我們需要積極應(yīng)對這些挑戰(zhàn),加強網(wǎng)絡(luò)安全意識和技術(shù)研究,保障網(wǎng)絡(luò)環(huán)境的穩(wěn)定和可靠。綜上所述,網(wǎng)絡(luò)編程在當(dāng)今信息時代扮演著重要的角色,它將繼續(xù)推動著科技的發(fā)展和人類社會的進步。我們應(yīng)該不斷學(xué)習(xí)和探索網(wǎng)絡(luò)編程的知識,不斷創(chuàng)新和提升自己的技能,為構(gòu)建更加智能、高效、安全的網(wǎng)絡(luò)世界貢獻(xiàn)自己的力量。讓我們攜手并肩,共同開創(chuàng)網(wǎng)絡(luò)編程的輝煌未來!【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議,Java基礎(chǔ),網(wǎng)絡(luò),udp,網(wǎng)絡(luò)協(xié)議文章來源地址http://www.zghlxwxcb.cn/news/detail-714208.html

到了這里,關(guān)于【從入門到起飛】JavaSE—網(wǎng)絡(luò)編程三要素,軟件架構(gòu),UDP協(xié)議的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 網(wǎng)絡(luò)編程入門

    軟件結(jié)構(gòu) cs架構(gòu) (客戶端服務(wù)器架構(gòu)) bs架構(gòu) (瀏覽器服務(wù)器架構(gòu)) 網(wǎng)絡(luò)通信協(xié)議:在同一個網(wǎng)絡(luò)中進行通信的計算機需要遵守的規(guī)范 TCP/IP 傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議,是因特網(wǎng)最基本、最廣泛的協(xié)議,它定義了計算機如何連接互聯(lián)網(wǎng),以及數(shù)據(jù)如何在他們之間傳輸?shù)臉?biāo)

    2024年02月14日
    瀏覽(20)
  • 【100天精通Python】Day46:Python網(wǎng)絡(luò)編程_網(wǎng)絡(luò)編程基礎(chǔ)與入門

    目錄 專欄導(dǎo)讀? 1 網(wǎng)絡(luò)編程的基礎(chǔ) 2. 基本概念和協(xié)議 2.1 計算機網(wǎng)絡(luò)基礎(chǔ)

    2024年02月08日
    瀏覽(32)
  • 計算機網(wǎng)絡(luò)技術(shù)與JAVA網(wǎng)絡(luò)編程URL編程-----JAVA入門基礎(chǔ)教程-----計算機網(wǎng)絡(luò)經(jīng)典

    import org.junit.jupiter.api.Test; import java.io.*; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; public class URLTest { public static void main(String[] args) { //URL:統(tǒng)一資源定位符(種子),一個URL就定位著互聯(lián)網(wǎng)上某個資源的地址 //http:應(yīng)用層協(xié)議,IP地址,端口號,資源地址,參數(shù)

    2024年02月15日
    瀏覽(99)
  • 計算機網(wǎng)絡(luò)技術(shù)與JAVA網(wǎng)絡(luò)編程UDP編程-----JAVA入門基礎(chǔ)教程-----計算機網(wǎng)絡(luò)經(jīng)典

    import org.junit.jupiter.api.Test; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.*; public class UDP { public static void main(String[] args) { DatagramSocket datagramSocket = null; try { datagramSocket = new DatagramSocket(); InetAddress inetAddress = InetAddress.getByName(\\\"127.0.0.1\\\"); int port = 9090; byte[] byte

    2024年02月15日
    瀏覽(36)
  • ?網(wǎng)絡(luò)socket編程(二)——面向流的TCP編程及測試(SocketTool)、Wireshark軟件使用

    ?網(wǎng)絡(luò)socket編程(二)——面向流的TCP編程及測試(SocketTool)、Wireshark軟件使用

    目錄 一、書接上回(select()函數(shù)使用注意事項) 二、面向流(TCP)的socket編程 2.1 TCP服務(wù)端編程和測試 2.1.1 TCP服務(wù)器原理流程圖 2.1.2 TCP服務(wù)端編程實戰(zhàn) 2.1.3 測試 2.2 TCP客戶端編程和測試 三、Wireshark抓包軟件的使用 3.1 Wireshark是什么 3.2 Wireshark抓包界面 3.3 Wireshark過濾器設(shè)置 3.3

    2024年04月17日
    瀏覽(19)
  • 快速入門java網(wǎng)絡(luò)編程基礎(chǔ)------Nio

    快速入門java網(wǎng)絡(luò)編程基礎(chǔ)------Nio

    嗶哩嗶哩黑馬程序員 netty實戰(zhàn)視頻 NIO(New I/O)是Java中提供的一種基于通道和緩沖區(qū)的I/O(Input/Output)模型。它是相對于傳統(tǒng)的IO(InputStream和OutputStream)模型而言的新型I/O模型。NIO的主要特點包括: 1.通道與緩沖區(qū): 2.NIO引入了通道(Channel)和緩沖區(qū)(Buffer)的概念。通道

    2024年01月20日
    瀏覽(29)
  • 【嵌入式Qt開發(fā)入門】Qt如何網(wǎng)絡(luò)編程——獲取本機的網(wǎng)絡(luò)信息

    【嵌入式Qt開發(fā)入門】Qt如何網(wǎng)絡(luò)編程——獲取本機的網(wǎng)絡(luò)信息

    ????????Qt 網(wǎng)絡(luò)模塊為我們提供了編寫TCP/IP客戶端和服務(wù)器的類。它提供了較低級別的類,例如代表低級網(wǎng)絡(luò)概念的 QTcpSocket,QTcpServer 和 QUdpSocket,以及諸如 QNetworkRequest, QNetworkReply 和 QNetworkAccessManager 之類的高級類來執(zhí)行使用通用協(xié)議的網(wǎng)絡(luò)操作。它 還提供了諸如QNet

    2024年02月16日
    瀏覽(30)
  • 【零基礎(chǔ)入門學(xué)習(xí)Python---Python網(wǎng)絡(luò)編程之django快速入門實踐】

    【零基礎(chǔ)入門學(xué)習(xí)Python---Python網(wǎng)絡(luò)編程之django快速入門實踐】

    ?? Python ?? ?? 算法刷題專欄 | 面試必備算法 | 面試高頻算法 ?? ?? 越難的東西,越要努力堅持,因為它具有很高的價值,算法就是這樣? ?? 作者簡介:碩風(fēng)和煒,CSDN-Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者??,保研|國家獎學(xué)金|高中學(xué)習(xí)JAVA|大學(xué)完善JAVA開發(fā)技術(shù)棧|面試刷題|面經(jīng)八股文|經(jīng)驗

    2024年02月16日
    瀏覽(53)
  • Java面向?qū)ο蟪绦蜷_發(fā)——網(wǎng)絡(luò)編程入門知識

    Java面向?qū)ο蟪绦蜷_發(fā)——網(wǎng)絡(luò)編程入門知識

    ? C/S結(jié)構(gòu) :client/sever是指客戶端和服務(wù)器結(jié)構(gòu)。常見程序有QQ、迅雷等軟件。 B/S結(jié)構(gòu) :browser/sever是指瀏覽器和服務(wù)器結(jié)構(gòu)。常見瀏覽器有谷歌、火狐等。 Web應(yīng)用系統(tǒng)開發(fā)的兩種流行架構(gòu) 兩種架構(gòu)各有優(yōu)勢,但是無論哪種架構(gòu),都離不開網(wǎng)絡(luò)的支持。網(wǎng)絡(luò)編程,就是在一

    2024年02月12日
    瀏覽(93)
  • 網(wǎng)絡(luò)編程的無冕之王-Netty入門和核心組件介紹

    網(wǎng)絡(luò)編程的無冕之王-Netty入門和核心組件介紹

    最近我在研究Netty,之前只是經(jīng)常聽說,并沒有實際做過研究,為什么突然要好好研究一下它,主要是因為前段時間,我在看RocketMQ底層原理的時候發(fā)現(xiàn)它的底層的網(wǎng)絡(luò)通信都是基于Netty,然后網(wǎng)上一查,果然,大家太多的耳熟能詳?shù)墓ぞ呓M件,都是基于Netty做的開發(fā)。大家看

    2024年02月10日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包