• 网络编程1--毕向东java基础教程视频学习笔记


    目录:

    01 网络编程概述1

    02 网络编程概述2

    03网络编程 网络模型

    04网络编程 IP地址

    05网络编程 TCP和UDP

    06网络编程 Socket

    07网络编程 UDP发送端

     

     

    01 网络编程概述1
    1.找到对方IP。
    2.数据要发送到对方指定的应用程序上,为了标识这些应用程序,给这些网络应用程序都用数字进行标识。为了方便称呼这个数字,把它称为端口,是逻辑端口。
    3.定义通信规则,这个通信规则称为协议。国际组织规定了通用协议TCP/IP.


    02 网络编程概述2

     

    03网络编程 网络模型

    04网络编程 IP地址
    IP地址
    网络中设备的标识
    不易记忆,可用主机名
    本地回环地址:127.0.0.1 主机名:localhost
    Java中用InetAddress类来描述IP地址。

    获得该类实例的方法:
    getLocalHost():用于返回本地主机的IP地址
    getByName():在给定主机名的情况下确定IP地址

    05网络编程 TCP和UDP
    UDP:
    将数据及源和目的封装在数据包中,不需要建立连接
    每个数据报的大小限制在64K内。
    不需要建立连接,速度快。
    因无连接,是不可靠协议。
    TCP:
    建立连接,形成传输数据的通道。
    在连接中可以进行大数据传输。
    通过三次握手完成连接,是可靠协议
    必须建立连接,效率和降低。

    06网络编程 Socket
    Socket有插座的意思
    Socket就是为网络服务提供的一种机制。
    通信的两端都有Socket。
    网络通信其实就是Socket之间的通信。
    数据在两个Socket之间通过IO传输。

     

    07网络编程 UDP发送端




     

    示例代码:

     1 import java.net.*;
     2 
     3 /*
     4 需求:通过UDP传输方式,将一段文字数据发送出去。
     5 思路:
     6 1.建立UDPSocket服务,
     7 2.提供数据,并将数据封装到数据包中。
     8 3.通过Socket服务的发送功能,将数据包发送出去。
     9 4.关闭资源
    10 
    11 */
    12 public class UdpSend
    13 {
    14     public static void main(String[] args)throws Exception 
    15     {
    16         //1.建立udp服务,通过DatagramSocket对象
    17         DatagramSocket ds=new DatagramSocket();
    18 
    19         //2.确定数据,并封装成数据报,
    20         //DatagramPacket(byte[] buf, int length, InetAddress address, int port)
    21         byte[] buf="you are not alone".getBytes();
    22         DatagramPacket dp=new DatagramPacket(buf,buf.length,InetAddress.getByName("61.190.196.18"),10000);
    23         //3.通过Socket服务,将已有的数据包发送出去,通过send方法
    24         ds.send(dp);
    25         //4.关闭资源
    26         ds.close();
    27 
    28     }
    29 }
    View Code

     

  • 相关阅读:
    LeetCode --- 65. Valid Number
    算法题:A除以B
    Oracle之PLSQL
    Explicit Semantic Analysis (ESA)
    POJ 2533 Longest Ordered Subsequence
    产品研发管理(二):使用SubVersion进行代码管理
    机器学习——深度学习(Deep Learning)
    豌豆夹Redis解决方式Codis源代码剖析:Proxy代理
    Qt之QHeaderView加入复选框
    Linux禁用显示“缓冲调整”
  • 原文地址:https://www.cnblogs.com/wsw-tcsygrwfqd/p/5043827.html
Copyright © 2020-2023  润新知