Question: Program 1 : Consider the following two programs. Write and execute them. ( You can use line commands to execute the programs or run two

Program 1:
Consider the following two programs. Write and execute them. (You can use line commands to execute the programs or run two Eclipse programs).
import java.io.*; import java.net.*;
import java.util.Scanner;
public class Server{
public static void main(String argv[]) throws Exception{
/*1.connection*/
ServerSocket serverSocket = new ServerSocket(6789);
Socket connectionSocket = serverSocket.accept();
/*2. A scanner or a BufferedReader for reading from the socket */
Scanner scanner = new Scanner(connectionSocket.getInputStream());
/*3. A DataOutputStream object to write in the socket*/
DataOutputStream outToClient=new DataOutputStream(connectionSocket.getOutputStream());
/*4. reading from the socket*/
String clientSentence = scanner.nextLine();
System.out.println("Received: "+ clientSentence);
/*5. modification of the sentence*/
String modifiedSentence =clientSentence.toUpperCase();
/*6. writing in the socket*/
outToClient.writeBytes(modifiedSentence+'
');
/*7.closing connections*/
scanner.close();
connectionSocket.close();
}}
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Client{
public static void main(String argv[]) throws Exception {
/*1. Connection*/
Socket connectionSocket = new Socket ("localhost",6789);
Scanner scanner, scannerFromSocket;
DataOutputStream outToServer;
String sentenceFromServer;
String clientSentence;
/*2. Scanner to read from keyboard */
scanner = new Scanner(System.in);
/*3. Scanner to read from the socket */
scannerFromSocket = new Scanner(connectionSocket.getInputStream());
/*4. DataOutputStream to write in the socket */
outToServer = new DataOutputStream(connectionSocket.getOutputStream());
/*5. receiving and sending messages*/
clientSentence =scanner.nextLine();
outToServer.writeBytes(clientSentence +'
');
sentenceFromServer=scannerFromSocket.nextLine();
System.out.println(sentenceFromServer);
scannerFromSocket.close();
scanner.close();
connectionSocket.close();
}}
1. What happens if you execute the client program before the server one?
2. Add a loop to the programs to make it repeat the task many times.
3. Modify the programs to create a chat between the server and the client: The client sends a text to the server. The server prints the received text and sends an answer to the client. Use a loop to repeat the task

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!