Skip to content
Snippets Groups Projects
TcpClient.java 2.07 KiB

package tcpclient;

import java.io.*;
import java.net.*;

/**
 * Before, we always used telnet to connect to the server.
 * Here we are now writing our own program to do the connection.
 * 
 * As you will see, when we run this after we start the server
 * we will see the same string telnet printed, sent by the server.
 * The output at the server will show different socket pairs for
 * each time we ran it.
 * 
 * @author mcgredo
 */
public class TcpClient {

	public final static String LOCALHOST = "0:0:0:0:0:0:0:1"; // String constant, i.e. 127.0.0.1
  
    public static void main(String[] args) 
    {
        try
        {
          while(true)
          {
           System.out.println("creating socket");
           
           // We request an IP to connect to ("localhost") and
           // port number at that IP (2317). This establishes
           // a connection to that IP in the form of the Socket
           // object; the server uses a ServerSocket to wait for
           // connections.
           Socket socket = new Socket(LOCALHOST, 2317); // locohost?
           
           // Read the single line written by the server. We'd
           // do things a bit differently if many lines to be read
           // from the server, instead of one only.
           InputStream is = socket.getInputStream();
           InputStreamReader isr = new InputStreamReader(is);
           BufferedReader br = new BufferedReader(isr);
           
           String serverMessage = br.readLine();
           System.out.println("==================================================");
           System.out.println("Now we're talking!");
           System.out.println("The message the server sent was " + serverMessage);
		   // socket gets closed, either automatically/silently this code (or possibly by server)
		 } // end while(true)
        }
        catch(IOException e)
        {
            System.out.println("Problem with client: "); // describe what is happening
            System.out.println(e);
        }
		// program exit: tell somebody about that
		System.out.println("client exit");
    }
    
}