Servidor y cliente udp
Servidor UDP
import java.net.*;
import java.io.*;
public class ServidorUDP {
public static void main (String[] args){
try{DatagramSocket unSocket=new DatagramSocket(6789);
byte[] bufer=new byte[1000];
String msjrespuesta="";
BufferedReader br = newBufferedReader(new InputStreamReader(System.in));
String msj="";
while(!msjrespuesta.equals("exit")){
DatagramPacket peticion=newDatagramPacket(bufer,bufer.length);
unSocket.receive(peticion);
msj = new String(peticion.getData());
System.out.println("Mensaje recibido:"+msj);msjrespuesta = br.readLine();
byte [] mensaje=msjrespuesta.getBytes();
DatagramPacket respuesta=newDatagramPacket(mensaje,mensaje.length, peticion.getAddress(),peticion.getPort());
unSocket.send(respuesta);
}
unSocket.close();
}
catch(SocketExceptione){
System.out.println("Socket:"+e.getMessage());
}
catch(IOException e){
System.out.println("IO:"+e.getMessage());
}
}
}
Las líneas marcadas con azul y cursiva fueronlíneas agregadas al código originalmente suplementado por la profesora, con el código original era posible la comunicación entre dos procesos un cliente y un servidor. Sin embargo tenia algunaslimitaciones puesto que, la comunicación era unidireccional y a pesar de que el mensaje era recibido en el servidor y enviado de regreso, del lado del servidor era imposible enterarse (no se mostraba enpantalla) del mensaje enviado por el cliente. Partiendo de esta funcionalidad básica, hemos implementado un “chat”.
String msjrespuesta="";
Se agregó para definir una cadena que contenga el mensaje...
Regístrate para leer el documento completo.