Es fácil de averiguar. Sal a la calle y regalale todos tus bienes a alguien desconocido. Si se pueden enviar mensajes en el tiempo, te enviarán uno puteandote o diciendote que no lo hagas xD
Salud
Salud
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menúnew ServerSocket(int port, int backlog);
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class Servidor extends Thread{
private int port;
private ServerSocket server;
private Socket sck;
public Servidor() {
port = 5000;
}
public Servidor(int i) {
port = i;
}
public boolean Connect() {
try {
server = new ServerSocket(port);
System.out.println("Servidor esperando conexión.");
sck = server.accept();
return true;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("Error con la conexión");
return false;
}
}
public boolean Disconnect() {
try {
sck.close();
server.close();
return true;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("Error al desconectar");
return false;
}
}
public boolean receiveMensaje() {
try {
PrintWriter printer = new PrintWriter(sck.getOutputStream(), true);
BufferedReader reader = new BufferedReader(new InputStreamReader(sck.getInputStream()));
System.out.println("Esperando Mensaje...");
sck.setSoTimeout(40*1000);
String mensaje = reader.readLine();
while(sck.isConnected() && !mensaje.equals("FIN")) {
System.out.println("Recibido: "+mensaje);
if(!mensaje.equals("FIN")) {
printer.println(mensaje.toUpperCase());
mensaje = reader.readLine();
}
}
// System.out.println("Server apagandose");
this.Disconnect();
return true;
} catch (IOException e) {
System.out.println("Error: Compruebe su conexion o que no ha estado más de 40 segundos inactivo.");
Disconnect();
return false;
}
}
public void run() {
while(true) {
Connect();
receiveMensaje();
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Servidor sv = new Servidor();
// Servidor sv = new Servidor(Integer.parseInt(args[0]));
sv.run(); // Porque no necesita ser concurrente.
}
public class Chat {
private Cliente cl;
private Servidor sv;
public Chat() {
cl = new Cliente();
sv = new Servidor();
}
public Chat(String ipServ, int puertSend, int puertRec) {
cl = new Cliente(ipServ, puertSend);
sv = new Servidor(puertRec);
}
public void Arrancar() {
sv.Connect();
cl.Connect();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Chat chat = new Chat();
chat.Arrancar();
}
}
public class Chat {
private Cliente cl;
private Servidor sv;
public Chat() {
cl = new Cliente();
sv = new Servidor();
//////////////////////////////////////////////
Arrancar();
/////////////////////////////////////////////
}
public Chat(String ipServ, int puertSend, int puertRec) {
cl = new Cliente(ipServ, puertSend);
sv = new Servidor(puertRec);
}
////////////////////////////////////////////////////// Procedimiento Arrancar() cambiado entero
public void Arrancar() {
sv.start();
cl.start();
try {
sv.join();
cl.join();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new Chat();
}
}