ACN Mod-Multihost New

MULTI CLIENT

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

public class MultiClient
{
public static void main(String[] args) throws Exception
{
Socket socket = null;
PrintWriter out = null;
BufferedReader in = null;

try
{
socket = new Socket(“angel”, 4444);        //    ’angel’->own computer name
out = new PrintWriter(socket.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
}
catch (Exception e)
{
System.out.println(“Error:”);
System.exit(1);
}

BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));
String fromServer;
String toServer;
String fromUser;

System.out.print(“\nEnter data to Send: “);
while ((toServer = stdIn.readLine()) != null)
{
out.println(toServer);
fromServer = in.readLine();
System.out.println(“Server: ” + fromServer);
if (fromServer.equals(“EXIT”))
break;
System.out.print(“\nEnter data to Send: “);
}
out.close();
in.close();
stdIn.close();
socket.close();
}
}

=========================================

MULTI SERVER

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

public class MultiServer
{
public static void main(String[] args) throws Exception
{
ServerSocket serverSocket = null;
boolean listening = true;

try
{
serverSocket = new ServerSocket(4444);
}
catch (Exception e)
{
System.out.println(“Error:”);
System.exit(-1);
}

while(listening)
{
System.out.println(“Waiting for data….”);
new MultiServerThread(serverSocket.accept()).start();
}

serverSocket.close();
}
}

class MultiServerThread extends Thread
{
private Socket socket = null;

public MultiServerThread(Socket socket)
{
super(“MultiServerThread”);
this.socket = socket;
}

public void run()
{
try
{
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

String inputLine, outputLine;
outputLine = “”;

while((inputLine = in.readLine()) != null)
{
synchronized(this)
{
outputLine = inputLine.toUpperCase();
out.println(outputLine);
System.out.println(“From Client: “+socket.getInetAddress().getHostName()+”->”+inputLine);
if (inputLine.equalsIgnoreCase(“exit”))
break;
}
}
out.close();
in.close();
socket.close();
}
catch (Exception e)
{
System.out.println(“Error:”);
}
}
}

Advertisement

No comments yet

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.