Clase servidor.java:
import java.io.*;
import java.net.*;
public class servidor {
public static void main(String[] args) throws IOException { /*mejor con try & catch */
ServerSocket puerto = null; //inicializamos
Socket canal = null;
InputStream buffer_in; /* creamos un buffer de datos para el canal de entrada*/
DataInputStream contenedor_flujo; /*creamos un sitio donde guardar el contenedor que nos envian, aviso según el eclipse de esta forma es no necesariamente seguro para acceso multithread*/
puerto = new ServerSocket(11000); /*por donde recibimos los datos*/
canal = puerto.accept();/*escucha conexiones en ese puerto y las acepta*/
buffer_in = canal.getInputStream();/*trae un flujo de datos desde nuestro socket*/
contenedor_flujo = new DataInputStream(buffer_in); /*guardamos ese flujo de datos en el contenedor*/
String string = new String(contenedor_flujo.readUTF());/*obtiene cadena de la información del contenedor que está codificada en UTF-8 modificado*/
System.out.print(string); /*imprimimos la cadena*/
contenedor_flujo.close();/*cerramos el contenedor*/
buffer_in.close();/*cerramos el buffer*/
canal.close();/*cerramos el canal*/
}
}
Clase cliente.java (como veis es similar en muchos aspectos) :
import java.io.*;
import java.net.*;
public class cliente {
public static void main(String[] args) throws IOException {
Socket canal = null;
OutputStream buffer_out;
DataOutputStream contenedor;
canal = new Socket("127.0.0.1", 11000);/*indicamos a que ip y puerto enviamos,en este caso la ip localhost(nuestro equipo)*/
buffer_out = canal.getOutputStream();
contenedor = new DataOutputStream(buffer_out);
String info_a_enviar = "Enviamos información\n";
contenedor.writeUTF(info_a_enviar);/*escribe la información en UTF-8 modificado*/
contenedor.close();
buffer_out.close();
canal.close();
}
}
No hay comentarios:
Publicar un comentario