Read more
This practical guide provides a complete introduction to developing network programs with Java. You’ll learn how to use Java’s network class library to quickly and easily accomplish common networking tasks such as writing multithreaded servers, encrypting communications, broadcasting to the local network, and posting data to server-side programs.
Author Elliotte Rusty Harold provides complete working programs to illustrate the methods and classes he describes. This thoroughly revised fourth edition covers REST, SPDY, asynchronous I/O, and many other recent technologies.
* Explore protocols that underlie the Internet, such as TCP/IP and UDP/IP
* Learn how Java’s core I/O API handles network input and output
* Discover how the InetAddress class helps Java programs interact with DNS
* Locate, identify, and download network resources with Java’s URI and URL classes
* Dive deep into the HTTP protocol, including REST, HTTP headers, and cookies
* Write servers and network clients, using Java’s low-level socket classes
* Manage many connections at the same time with the nonblocking I/O
List of contents
Dedication
Preface
Chapter 1: Basic Network Concepts
Chapter 2: Streams
Chapter 3: Threads
Chapter 4: Internet Addresses
Chapter 5: URLs and URIs
Chapter 6: HTTP
Chapter 7: URLConnections
Chapter 8: Sockets for Clients
Chapter 9: Sockets for Servers
Chapter 10: Secure Sockets
Chapter 11: Nonblocking I/O
Chapter 12: UDP
Chapter 13: IP Multicast
Index
Colophon
About the author
Elliotte Rusty Harold is originally from New Orleans to which he returns periodically in search of a decent bowl of gumbo. However, he currently resides in the Prospect Heights neighborhood of Brooklyn with his wife Beth and dog Thor. He's a frequent speaker at industry conferences including Software Development, Dr. Dobb's Architecture & Design World, SD Best Practices, Extreme Markup Languages, and too many user groups to count. His open source projects include the XOM Library for processing XML with Java and the Amateur media player.
Summary
This practical guide provides a complete introduction to developing network programs with Java. You'll learn how to use Java's network class library to quickly and easily accomplish common networking tasks such as writing multithreaded servers, encrypting communications, broadcasting to the local network, and posting data to server-side programs