Java Socket Programming
Java Socket Programming
Please turn off all
We will learn how Java handles
I assume you
Applet Network Security Restrictions
Some Background
Hosts
Internet addresses
Domain Name System (DNS)
The InetAddress Class
Creating InetAddresses
The getByName() factory method
Other ways to create InetAddress objects
Getter Methods
Utility Methods
Ports
Protocols
Questions?
Datagrams
Packets Allow Error Correction
Abstraction
Sockets
Socket Operations
The java.net.Socket class
Constructing a Socket
Opening Sockets
Choosing the Host and the Port
PortScanner
Picking an IP address
Choosing a Local Port
Sending and Receiving Data
Reading Input from a Socket
Time Client
Writing Output to a Socket
Discard
Reading and Writing to a Socket
Synchronous
Request-Response
Asynchronous
Very Basic HTTP Client
Better Example
Socket Options
Getter Methods
Questions?
Servers
Server Sockets
Multiple Clients
Queueing
The java.net.ServerSocket Class
Constructors
Constructing Server Sockets
Binding to Ports
Port Numbers
Expanding the Queue
Choosing an IP address
Example
Checking the Port Number
Accepting Connection
Reading Data with a ServerSocket
A Simple Server
A Better Server
Writing Data to a Client
Interacting with a Client
Threading
Adding Threading to a Server
Adding a Thread Pool to a Server
Thread Issues
Thread Pools
New I/O API
Setting Server Socket Options
Utility Methods
Questions?
UDP
The UDP Classes
java.net.DatagramPacket
java.net.DatagramSocket
UDP ports
Two DatagramPacket Constructors
For example,
With a destination:
DatagramPackets are not immutable.
java.net.DatagramSocket
Sending UDP Datagrams
For example,
Receiving UDP Datagrams
For example,
Questions?
To Learn More
Questions?
Entire Presentation as Single File
Start
|
Cafe con Leche
Copyright 2003 Elliotte Rusty Harold
Last Modified February 13, 2003