网络编程详解 持续更新

网络编程

1.1概述

网络编程详解 持续更新
tcp 需要确认 一直连接

udp 不需要确认一直连接

1.1.2计算机网络

计算机网络是指将==地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统网络管理软件网络通信协议==的管理和协调下,实现资源共享和信息传递的计算机系统。 [1]

  1. 地理位置不同 怎么获取具体信息,
  2. 如何连接
  3. 通信协议
  4. 实现网络资源共享

1.1.3网络编程的目的

无线电台…传播交流信息, 核心叫数据交换 也就是通信

1.1.4达成什么效果

  1. 准确定位网络一台主机
  2. 找到主机如何让传输数据

javaweb是 网页编程 b/s

网络编程TCp/ip c/s

1.2网络通信的要素

如何实现网络的通信?

通信双方地址:

  • ip
  • 端口号
  • 需要规则 通信协议

TCP/IP

网络编程详解 持续更新

解决 问题 :

1.如何让准确的定位网络的注解

2.找到主机后如何通信

3.ip和端口号

4.网络通信协议 upc tcp 的类

1.3 IP 类

ip地址:inteAddress

  • 唯一定位的主机
  • 127.0.0.1 本机localhost
  • ipv4 /ipv6
  • ipv4 127.0.0.1,四个字节 ,0-255,42亿 ;30亿再北美,4亿再亚洲 ,2011年用尽
  • ipv6 16位*8无符号整数 =128b

一、冒分十六进制表示法
  格式为X:X:X:X:X:X:X:X,其中每个X表示地址中的16b,以十六进制表示,例如:
  ABCD:EF01:2345:6789:ABCD:EF01:2345:6789
  这种表示法中,每个X的前导0是可以省略的,例如:
  2001:0DB8:0000:0023:0008:0800:200C:417A→ 2001:DB8:0:23:8:800:200C:417A

  • 公网 互联网 私网 局域网
package com.cjg.netCode;

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

public class net01 {
    public static void main(String[] args) {
        try {
            InetAddress localHost = InetAddress.getLocalHost();
            InetAddress byName = InetAddress.getByName("www.baidu.com");
            String hostName = byName.getHostName();
            System.out.println(hostName);//获取域名
            System.out.println(byName.getHostAddress()); // 获取ip
            System.out.println(localHost);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }
}

1.4端口

端口表示 计算机上的一个程序的进程;

  • 一栋楼是一个 ip
    • 每一户是一个端口
    • 每一户中的物件是程序

被规定65535 tcp udp 都有

端口 (不建议占用)

  • 公有 端口0-1023

  • http:80 https:443 ftp:21 telent:23

  • 程序 tomcat :80 Mysql:3306 oracle:1521

  • 动态私有 49152-65535

  • 63342 idea

    netstat -ano # 查看所以端口
    netstat -ano|findstr "5900" #查看制定端口
    tasklist|findstr "xxxx" #查看制定进程
    
    
  • package com.cjg.netCode;
    
    import java.net.InetSocketAddress;
    
    public class net02 {
        public static void main(String[] args) {
            InetSocketAddress inetSocketAddress = new InetSocketAddress("127.0.0.1", 80);
            System.out.println(inetSocketAddress.getAddress());
            System.out.println(inetSocketAddress.getHostName());
            System.out.println(inetSocketAddress.getPort());
            System.out.println(inetSocketAddress);
        }
    }
    
    记住两个类  InetSocketAddress InetAddress
    

1.5通信协议

上一篇:InetAddress类


下一篇:MySQL修改root密码的几种方法