17.0 第17章 前言
第17章 网络编程 前言
本章要点
- 计算机网络基础
IP
地址和端口- 使用
InetAddress
包装IP
地址 - 使用
URLEncoder
和URLDecoder
工具类 - 使用
URLConnection
访问远程资源 TCP
协议基础- 使用
ServerSocket
和Socket
- 使用
NIO
实现非阻塞式网络通信 - 使用
AIO
实现异步网络通信 UDP
协议基础- 使用
DatagramSocket
发送/接收数据报(DatagramPacket
) - 使用
MulticastSocket
实现多点广播 - 通过
Proxy
使用代理服务器 - 通过
ProxySelector
使用代理服务器
本章将主要介绍Java
网络通信的支持,通过这些网络支持类,Java
程序可以非常方便地访问互联网上的HTTP
服务、FTP
服务等,并可以直接取得互联网上的远程资源,还可以向远程资源发送GET
、POST
请求
介绍网络工具类
本章先简要介绍计算机网络的基础知识,包括酽地址和端口等概念,这些知识是网络编程的基础。本章会详细介绍InetAddress
、URLDecoder
、URLEncoder
、URL
和URLConnection
等网络工具类,并会深入介绍通过URLConnection
发送请求、访问远程资源等操作。
TCP编程
本章将重点介绍Java
提供的TCP
网络通信支持,包括如何利用ServerSocket
建立TCP
服务器,利用Socket
建立TCP
客户端。实际上Java
的网络通信非常简单,服务器端通过ServerSocket
建立监听,客户端通过Socket
连接到指定服务器后,通信双方就可以通过IO流进行通信。本章将以采用逐步迭代的方式开发一个C/S结构多人网络聊天工具为例,向读者介绍基于TCP
协议的网络编程。
UDP编程
本章还将重点介绍Java
提供的UDP
网络通信支持,主要介绍如何使用DatagramSocket
来发送、接收数据报(DatagramPacket
),并讲解如何使用MulticastSocket
来实现多点广播通信。本章也将以开发局域网通信程序为例来介绍MulticastSocket
和DatagramSocket
的实际用法
代理服务器访问远程资源
本章最后还会介绍利用Proxy
和ProxySelector
在Java
程序中通过代理服务器访问远程资源。