Mega Code Archive
0366 TCPIP Server Sockets
The ServerSocket class creates servers that listen for client programs to connect to them on published ports. The ServerSocket class is designed to be a "listener," which waits for clients to connect before doing anything.
Here are three of its constructors:
ServerSocket(int port) throws IOException
Creates server socket on the specified port with a queue length of 50.
ServerSocket(int port, int maxQueue) throws IOException
Creates a server socket on the specified port with a maximum queue length of maxQueue.
ServerSocket(int port, int maxQueue, InetAddress localAddress) throws IOException
Creates a server socket on the specified port with a maximum queue length of maxQueue. On a multihomed host, localAddress specifies the IP address to which this socket binds.
accept() method from ServerSocket is a blocking call that will wait for a client to initiate communications and return with a Socket that is then used for communication with the client.
import java.io.DataOutputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class MainClass {
public static void main(String args[]) {
try {
int port = 5555;
ServerSocket ss = new ServerSocket(port);
while (true) {
// Accept incoming requests
Socket s = ss.accept();
// Write result to client
OutputStream os = s.getOutputStream();
DataOutputStream dos = new DataOutputStream(os);
dos.writeInt(100);
s.close();
}
} catch (Exception e) {
System.out.println("Exception: " + e);
}
}
}