| |
| |
Preface | |
| |
| |
Acknowledgments | |
| |
| |
| |
Networking Theory | |
| |
| |
What Is a Network? | |
| |
| |
How Do Networks Communicate? | |
| |
| |
Communication across Layers | |
| |
| |
Advantages of Layering | |
| |
| |
Internet Architecture | |
| |
| |
Internet Application Protocols | |
| |
| |
TCP/IP Protocol Suite Layers | |
| |
| |
Security Issues: Firewalls and Proxy Servers | |
| |
| |
Summary | |
| |
| |
| |
Java Overview | |
| |
| |
What Is Java? The Java Programming Language | |
| |
| |
The Java Platform | |
| |
| |
The Java Application Program Interface | |
| |
| |
Java Networking Considerations | |
| |
| |
Applications of Java Network Programming | |
| |
| |
Java Language Issues | |
| |
| |
System Properties | |
| |
| |
Development Tools | |
| |
| |
Summary | |
| |
| |
| |
Internet Addressing | |
| |
| |
Local Area Network Addresses | |
| |
| |
Internet Protocol Addresses | |
| |
| |
Beyond IP Addresses: The Domain Name System | |
| |
| |
Internet Addressing with Java | |
| |
| |
Summary | |
| |
| |
| |
Data Streams | |
| |
| |
Overview | |
| |
| |
How Streams Work | |
| |
| |
Filter Streams | |
| |
| |
Readers and Writers | |
| |
| |
Object Persistence and Object Serialization | |
| |
| |
Summary | |
| |
| |
| |
User Datagram Protocol | |
| |
| |
Overview | |
| |
| |
DatagramPacket Class | |
| |
| |
DatagramSocket Class | |
| |
| |
Listening for UDP Packets | |
| |
| |
Sending UDP Packets | |
| |
| |
User Datagram Protocol Example | |
| |
| |
Building a UDP Client/Server | |
| |
| |
Additional Information on UDP. Summary | |
| |
| |
| |
Transmission Control Protocol | |
| |
| |
Overview | |
| |
| |
TCP and the Client/Server Paradigm | |
| |
| |
TCP Sockets and Java | |
| |
| |
Socket Class | |
| |
| |
Creating a TCP Client | |
| |
| |
ServerSocket Class | |
| |
| |
Creating a TCP Server | |
| |
| |
Exception Handling: Socket Specific Exceptions | |
| |
| |
Summary | |
| |
| |
| |
Multi-threaded Applications | |
| |
| |
Overview | |
| |
| |
Multi-threading in Java | |
| |
| |
Synchronization | |
| |
| |
Interthread Communication | |
| |
| |
Thread Groups | |
| |
| |
Thread Priorities | |
| |
| |
Summary | |
| |
| |
| |
Implementing Application Protocols | |
| |
| |
Overview | |
| |
| |
Application Protocol Specifications | |
| |
| |
Application Protocols Implementation | |
| |
| |
Summary | |
| |
| |
| |
HyperText Transfer Protocol | |
| |
| |
Overview | |
| |
| |
HTTP and Java | |
| |
| |
The Common Gateway Interface (CGI). Summary | |
| |
| |
| |
Java Servlets | |
| |
| |
Overview | |
| |
| |
How Servlets Work | |
| |
| |
Using Servlets | |
| |
| |
Running Servlets | |
| |
| |
Writing a Simple Servlet | |
| |
| |
SingleThreadModel | |
| |
| |
ServletRequest and HttpServletRequest | |
| |
| |
ServletResponse and Http Response | |
| |
| |
ServletConfig | |
| |
| |
ServletContext | |
| |
| |
Servlet Exceptions | |
| |
| |
Cookies | |
| |
| |
HTTP Session Management in Servlets | |
| |
| |
Summary | |
| |
| |
| |
Remote Method Invocation (RMI) | |
| |
| |
Overview | |
| |
| |
How Does Remote Method Invocation Work? Defining an RMI Service Interface | |
| |
| |
Implementing an RMI Service Interface | |
| |
| |
Creating Stub and Skeleton Classes | |
| |
| |
Creating an RMI Server | |
| |
| |
Creating an RMI Client | |
| |
| |
Running the RMI System | |
| |
| |
Remote Method Invocation Packages and Classes | |
| |
| |
Remote Method Invocation Deployment Issues | |
| |
| |
Using Remote Method Invocation to Implement Callbacks | |
| |
| |
Remote Object Activation | |
| |
| |
Summary | |
| |
| |
| |
Java IDL and CORBA | |
| |
| |
Overview | |
| |
| |
Architectural View of CORBA | |
| |
| |
Interface Definition Language (IDL) | |
| |
| |
From IDL to Java | |
| |
| |
Summary | |
| |
| |
| |
JavaMail | |
| |
| |
Overview | |
| |
| |
Installing the JavaMail API | |
| |
| |
Testing the JavaMail Installation | |
| |
| |
Working with the JavaMail API | |
| |
| |
Advanced Messaging with JavaMail | |
| |
| |
Summary | |
| |
| |
Index | |