Java基础进阶网络编程概述

简介: Java基础进阶网络编程概述

一、网络编程中有两个主要的问题:


1.如何准确地定位网络上一台或多台主机;定位主机上的特定的应用

2.找到主机后如何可靠高效地进行数据传输


二、网络编程中的两个要素:


1.对应问题一:IP和端口号

2.对应问题二:提供网络通信协议:TCP/IP参考模型(应用层、传输层、网络层、物理+数据链路层)


三、通信要素一:IP和端口号


1、IP:唯一的标识 Internet 上的计算机(通信实体)


2、在Java中使用InetAddress类代表IP


3、IP分类:IPv4 和 IPv6 ; 万维网 和 局域网


4、域名: www.baidu.com www.mi.com www.sina.com www.jd.com

www.vip.com


5、本地回路地址:127.0.0.1 对应着:localhost


6、如何实例化InetAddress:两个方法:getByName(String host) 、 getLocalHost()


两个常用方法:getHostName() / getHostAddress()


7、端口号:正在计算机上运行的进程。

要求:不同的进程有不同的端口号

范围:被规定为一个 16 位的整数 0~65535。


8、端口号与IP地址的组合得出一个网络套接字:Socket


示例代码:


public class InetAddressTest01 {
    public static void main(String[] args) throws Exception{
        InetAddress inet1 = InetAddress.getByName("198.168.19.04");
        System.out.println(inet1);
        InetAddress inet2 = InetAddress.getByName("www.baidu.com");
        System.out.println(inet2);
        InetAddress inet3 = InetAddress.getByName("127.0.0.1");
        System.out.println(inet3);
        InetAddress localHost = InetAddress.getLocalHost();
        System.out.println(localHost);
        System.out.println(inet2.getHostName());
        System.out.println(inet2.getHostAddress());
    }
}


运行结果:


0a2653c851af460fa595bd959398a8f1.png

相关文章
|
9天前
|
Java 程序员
JAVA程序员的进阶之路:掌握URL与URLConnection,轻松玩转网络资源!
在Java编程中,网络资源的获取与处理至关重要。本文介绍了如何使用URL与URLConnection高效、准确地获取网络资源。首先,通过`java.net.URL`类定位网络资源;其次,利用`URLConnection`类实现资源的读取与写入。文章还提供了最佳实践,包括异常处理、连接池、超时设置和请求头与响应头的合理配置,帮助Java程序员提升技能,应对复杂网络编程场景。
33 9
|
9天前
|
人工智能 Java 物联网
JAVA网络编程的未来:URL与URLConnection的无限可能,你准备好了吗?
随着技术的发展和互联网的普及,JAVA网络编程迎来新的机遇。本文通过案例分析,探讨URL与URLConnection在智能API调用和实时数据流处理中的关键作用,展望其未来趋势和潜力。
33 7
|
9天前
|
Java 开发者
JAVA高手必备:URL与URLConnection,解锁网络资源的终极秘籍!
在Java网络编程中,URL和URLConnection是两大关键技术,能够帮助开发者轻松处理网络资源。本文通过两个案例,深入解析了如何使用URL和URLConnection从网站抓取数据和发送POST请求上传数据,助力你成为真正的JAVA高手。
27 11
|
9天前
|
安全 Java API
深入探索Java网络编程中的HttpURLConnection:从基础到进阶
本文介绍了Java网络编程中HttpURLConnection的高级特性,包括灵活使用不同HTTP方法、处理重定向、管理Cookie、优化安全性以及处理大文件上传和下载。通过解答五个常见问题,帮助开发者提升网络编程的效率和安全性。
|
9天前
|
JSON 安全 算法
JAVA网络编程中的URL与URLConnection:那些你不知道的秘密!
在Java网络编程中,URL与URLConnection是连接网络资源的两大基石。本文通过问题解答形式,揭示了它们的深层秘密,包括特殊字符处理、请求头设置、响应体读取、支持的HTTP方法及性能优化技巧,帮助你掌握高效、安全的网络编程技能。
38 9
|
9天前
|
JSON Java API
JAVA网络编程新纪元:URL与URLConnection的神级运用,你真的会了吗?
本文深入探讨了Java网络编程中URL和URLConnection的高级应用,通过示例代码展示了如何解析URL、发送GET请求并读取响应内容。文章挑战了传统认知,帮助读者更好地理解和运用这两个基础组件,提升网络编程能力。
31 5
|
4月前
|
安全 Java Linux
(七)Java网络编程-IO模型篇之从BIO、NIO、AIO到内核select、epoll剖析!
IO(Input/Output)方面的基本知识,相信大家都不陌生,毕竟这也是在学习编程基础时就已经接触过的内容,但最初的IO教学大多数是停留在最基本的BIO,而并未对于NIO、AIO、多路复用等的高级内容进行详细讲述,但这些却是大部分高性能技术的底层核心,因此本文则准备围绕着IO知识进行展开。
156 1
|
4月前
|
Java 大数据
如何在Java中进行网络编程:Socket与NIO
如何在Java中进行网络编程:Socket与NIO
|
6月前
|
监控 Java 开发者
深入理解 Java 网络编程和 NIO
【4月更文挑战第19天】Java网络编程基于Socket,但NIO(非阻塞I/O)提升了效率和性能。NIO特点是非阻塞模式、选择器机制和缓冲区,适合高并发场景。使用NIO涉及通道、选择器和事件处理,优点是高并发、资源利用率和可扩展性,但复杂度、错误处理和性能调优是挑战。开发者应根据需求选择是否使用NIO,并深入理解其原理。
64 1
|
JSON 前端开发 安全
Java网络编程IO模型 --- BIO、NIO、AIO详解
Java网络编程IO模型 --- BIO、NIO、AIO详解
355 0
Java网络编程IO模型 --- BIO、NIO、AIO详解