duminică, 2 septembrie 2012

MultiServer


package cs.server;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class MultiServer {

public static void main(String[] args) {

ServerSocket server;
try {

server=new ServerSocket(9999);
System.out.println("Waiting for clients...");
while(true) {

Socket soc=server.accept();
new SimpleServer(soc);
}

} catch (IOException e) {

System.out.println("Port 9999 indisponibil");
System.exit(1);
}
}
}
package cs.server;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;

public class SimpleClient {

public static void main(String[] args) {

BufferedReader in, stdin;
PrintWriter out;
Socket s;
String sir;

while (true) {
try {

s = new Socket(InetAddress.getByName("localhost"), 9999);
in = new BufferedReader(new InputStreamReader(
s.getInputStream()));
out = new PrintWriter(s.getOutputStream(),true);
stdin = new BufferedReader(new InputStreamReader(System.in));
sir = stdin.readLine();

if (sir != null) {

out.println(sir);
System.out.println(in.readLine());
}
if (sir.compareToIgnoreCase("bye") == 0) {

break;
}
} catch (UnknownHostException e) {

System.out.println("UnknownHost !");
System.exit(1);

} catch (IOException e) {

System.out.println("Connection losed !");
break;
}
}
}
}
package cs.server;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;

public class SimpleServer extends Thread{

private Socket s;
private BufferedReader in;
private PrintWriter out;
SimpleServer(Socket s) {
this.s=s;
this.start();
}

public void run() {
try {
this.in=new BufferedReader(new InputStreamReader(this.s.getInputStream()));
this.out=new PrintWriter(this.s.getOutputStream(),true);
} catch (IOException e) {
System.out.println("Get streams error !");
System.exit(1);
}
String input;
while (true) {
try {
input=this.in.readLine();
if(input!=null) {
this.out.println("["+input+"]");
}
if(input.compareToIgnoreCase("bye")==0) {
break;
}
} catch (IOException e) {

System.out.println("Client went off");
break;
}
}
}
}

Niciun comentariu:

Trimiteți un comentariu