SERVER_THREAD
Código Java:
Ver originalimport java.net.*;
import java.io.*;
public class Server_Thread
extends Thread { protected Socket clientSocket
;
public Server_Thread
(Socket clientSoc
) { clientSocket = clientSoc;
}
public void run() {
System.
out.
println("Iniciando hilo......");
try {
true);
clientSocket.getInputStream()));
//recoge lo que ha recibido y lo devuelvo al mismo hilo
while ((inputLine = in.readLine()) != null) {
//nombreReceptor =
System.
out.
println("Server: " + inputLine
); // para hacer ECHO, le envio lo que he recibido
out.println("ECHO:"+ clientSocket.getPort() + inputLine);
if (inputLine.equals("Bye."))
break;
}
out.close();
in.close();
clientSocket.close();
System.
err.
println("Problem with Communication Server"); }
}
}
CLIENTE
Código Java:
Ver originalimport java.io.*;
import java.net.*;
import java.util.Scanner;
public class Cliente
implements Runnable { private static Scanner teclado
= new Scanner
(System.
in);
private int port = 5000;
private String nombre
= "clienteSinNombre";
public Cliente
(String serverHostname,
int port,
String nombre
) { super();
this.serverHostname = serverHostname;
this.port = port;
this.nombre = nombre;
}
public Cliente() {
}
public void run() {
System.
out.
println("Intentando conexión del cliente " + nombre
+ " al servidor" + serverHostname + " en puerto " + port);
try {
echoSocket
= new Socket(serverHostname,
5000);
out
= new PrintWriter(echoSocket.
getOutputStream(),
true); echoSocket.getInputStream()));
System.
err.
println("No conozco el servidor: " + serverHostname
); System.
err.
println("No consigo entrar " + "al servidor " + serverHostname);
}
System.
out.
println("¿Con quien te quieres comunicar?"); nombreReceptor = teclado.next();
try {
do{
// recoge el mensaje que escribe el cliente
System.
out.
println("Escribe:"); userInput = teclado.nextLine();
out.println(nombreReceptor + "@" + userInput); // lo envía al servidor
// end loop
if (userInput.equals("Bye."))
break;
System.
out.
println("echo: " + in.
readLine()); }while (true);
// TODO Auto-generated catch block
e.printStackTrace();
}
out.close();
try {
in.close();
// stdIn.close();
echoSocket.close();
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Solo tiene que funcionar en CONSOLE de Eclipse no tiene que tener interfaz