• Java网络编程


    Java网络编程

    计算机网络是通过传输介质、通信设施和网络通信协议,把分散在不同地点的计算机设备互连起来的,实现资源共享和数据传输的系统。网络编程就是编写程序使互联网的两个或多个设备(如计算机)之间进行数据传输。Java语言对网络编程提供了良好的支持。通过其提供的接口我们可以很方便地进行网络编程。

    IP地址相关操作

    InetAddress是Java对IP地址的封装。其下有两个子类Inet4Address和Inet6Address。这个类的实例经常和UDP DatagramSockets和Socket,ServerSocket类一起使用

    InetAddress 没有公开的构造方法,因此你必须通过一系列静态方法中的某一个来获取它的实例。

    1. //www.baidu.com实际上是主机名称
    2. //IPv4采用的是点分十进制的记法,所以难以记忆,
    3. //引入DNS可以将一个有含义的字符串和一个IP地址建立对应关系,当使用有含义的字符串时可以通过DNS转换为IP地址
    4. //InetAddress对象中可以封装一个IP地址和一个主机名
    5. InetAddress ia = InetAddress.getByName("www.baidu.com");  //获取对应主机名称的IP地址,会自动调用DNS服务
    6.         System.out.println(ia);
    7.         System.out.println();
    8.         InetAddress[] arr=InetAddress.getAllByName("www.baidu.com"); //获取对应主机名称的所有注册IP地址
    9.         for(InetAddress tmp:arr)
    10.             System.out.println(tmp);
    11.         System.out.println();
    12.         
    13. //        new InetAddress()  没有提供可以直接使用的构造器,所以不能直接new创建对象
    14. ia=InetAddress.getLocalHost();//获取本地机的IP地址
    15. System.out.println(ia);  //lover/172.30.1.101
    16.         
    17. ia=InetAddress.getLoopbackAddress(); //获取回绕地址
    18. System.out.println(ia);  //localhost/127.0.0.1
    19. System.out.println(ia.getClass());  //class java.net.Inet4Address
    20. System.out.println();
    21.         
    22. //通过IP地址查询对应信息
    23. InetAddress ia1=InetAddress.getByName("14.215.177.39");
    24. System.out.println(ia1);
    25. //用于判断是否可以连接ia对象对应的主机,可以理解为尝试是否能够ping通
    26. System.out.println(ia1.isReachable(2000));

    URL访问网上资源

    URL对象代表统一资源定位器,是指向互联网资源的指针,资源可以是简单的文件或目录,也可以是对复杂对象的引用,例如对数据库或搜索引擎的查询。用协议名、主机、端口和资源组成,即满足格式:protocol://host:port/resourceName,例如http://www.yan.com:80/index.php

    http协议的标准端口为80    https=http+SSL 加密数据传输的http,标准端口为443

    - URL统一资源指针,可以指定一个具体的资源,例如一个html网页
    - URI统一资源标识符,可以认为为了方便记忆,给URL起的别名

    构建URL对象

    // 创建一个URL对象,用于指代网络中的一个资源,如果网址不合法,则抛出MalformedURLException

    URL url = new URL("https://news.cctv.com/2022/09/12/ARTIZ8cD6tXepRSQ5cFIHyA5220912.shtml");

    最重要的方法:

    - url.openConnection()&#

  • 相关阅读:
    JUC-无锁
    SSM大学生创新项目管理系统
    记录 android studio 通过安装NDK 编译C文件,得到需要的so文件
    给Python漫画分集标题下载工具添加线程
    一、【海报合成的流程】
    程序员业务,微信全文搜索技术优化
    3.docker仓库(Nexus、Harbor)的安装
    javaScript:碰撞检测
    Eclipse切JRE环境后如何恢复- Unrecognized option: --enable-preview
    数据结构——二叉树
  • 原文地址:https://blog.csdn.net/m0_56627229/article/details/126840834