I want to send same message from server to multiple clients. How I can do it?
import java.io.*;
import java.net.*;
public class ServerChat implements Runnable
{
static ServerSocket server;
static Socket client;
static class Read implements Runnable
{
public void run()
{
try
{
InputStream istream=client.getInputStream();
InputStreamReader isreader=new InputStreamReader(istream);
BufferedReader breader=new BufferedReader(isreader);
String reader;
while((reader=breader.readLine())!=null)
{
System.out.println("From Client:"+reader);
}
breader.close();
istream.close();
isreader.close();
client.close();
}
catch(Exception read)
{
System.out.println(read);
}
}
}
static class Write implements Runnable
{
public void run()
{
try
{
OutputStream opstream=client.getOutputStream();
PrintStream pstream=new PrintStream(opstream);
BufferedReader breader1=new BufferedReader(new InputStreamReader(System.in));
String write;
while(!(write=breader1.readLine()).equals("exit"))
{
pstream.println(write);
}
breader1.close();
opstream.close();
pstream.close();
client.close();
}
catch(Exception write)
{
System.out.println(write);
}
}
}
int n=1;
public void run()
{
for(;;)/>/>
{
try
{
Read read=new Read();
Write write=new Write();
client=server.accept();
System.out.println("Connection established from client:"+n);
Thread t1=new Thread(read);
Thread t2=new Thread(write);
t1.start();
t2.start();
}
catch(Exception e)
{
System.out.println(e);
}
n++;
}
}
public static void main(String[] args)throws Exception
{
ServerChat chat=new ServerChat();
server=new ServerSocket(6666);
System.out.println("Waiting for connection");
Thread clientthread=new Thread(chat);
Thread clientthread1=new Thread(chat);
clientthread.start();
clientthread1.start();
}
}