1. 程式人生 > 其它 >JavaSE網路程式設計

JavaSE網路程式設計

網路程式設計

網頁程式設計:上層應用

網路程式設計:底層資料傳輸

  1. IP:定義節點,區分節點

    1. 分類:

      1. IPV4:4位元組32位

      2. IPV6:16位元組128位

      3. 特殊地址:

        1. 非註冊IP

        2. 本地IP

        3. 本地域名:localhost

        4. IP->域名:DNS伺服器

    2. 工具包位置:java.net InetAddress:表示IP地址

  2. 埠:區分軟體

    1. 埠規範:

      1. 埠號:兩個位元組,0~65535

      2. 統一協議下埠號不能衝突

      3. 8000以下埠號是預留埠號不建議使用

    2. 常見埠號:

      1. 80:http

      2. 8080:tomcat

      3. 1521:Oracle

      4. 3306:Mysql

    3. InetSocketAddress:此類實現Ip套接字地址(IP地址+埠號)

  3. URl:統一資源定位符,資源指標

    1. 網際網路三大基石:URL HTML HTTP

    2. URL組成:

      1. 協議:http

      2. 域名:www.baidu .com

      3. 埠:80

      4. 資源:index.html

      5. 資料:username=zhangsan&password=123

      6. 錨點:#a

      例子:url : http://www.baidu.com:80/index.html?username=zhangsan&password=123#a

  4. 協議:標準,規範,規則,合同

    1. 傳輸層協議:網際網路中傳輸資料需要滿足的協議

      1. UDP:協議簡單,效率高,不安全,大小受限

        1. UDP:

          1. Datagrampacket:資料報包

          2. DatagramSocket:用於傳送和接受資料報包

            資料是平等的資料基於包裹,基於位元組陣列

        2. UDP協議實現基礎的傳送端 :

          1. 定義傳送端

          2. 資料準備

          3. 資料打包

          4. 傳送端傳送包裹

          5. 關閉傳送端

        3. UDP協議實現基礎的接收端 :

          1. 定義我是接收端

          2. 準備包裹用來接收資料

          3. 接收端接收資料

          4. 處理資料

          5. 關閉

      2. TCP:安全,沒有大小限制,效率低,他是http的底層

        1. TCP協議下傳輸資料:

          1. 客戶端

          2. 伺服器

          3. 基於IO

        2. TCP協議實現客戶端基本流程:

          1. 構建我的客戶端 Socket

          2. 準備資料

          3. IO傳送資料

          4. 刷出

          5. 關閉(關流,關客戶端)

        3. TCP協議實現服務端基本流程:

          1. 定義服務端,構建我的服務端ServerSocket

          2. 阻塞式監聽

          3. IO接受資料

          4. 處理資料

          5. 關閉(關輸入流,關Socket監聽,關伺服器)