Jump to content
YOUR-AD-HERE
HOSTING
TOOLS

Locked Utilizando Socket en Java


Expermicid

Recommended Posts

Investigando un poco sobre socket en java, pude lograr este pequeño ejemplo en donde se estrablece una conexion Servidor-Cliente.

 

Al code le puse algunos comentarios para facilitar el entendimiento del codigo, cualquier duda preguntes :)

 

Cliente:

 

[lenguaje=java]// importamos librerias necesarias

import java.io.*;

import java.net.*;

 

class Cliente {

 

static final String HOST = "localhost"; // host a conectar

static final int PUERTO = 5000; // puerto de conexion

static String entrada = "";

 

public Cliente( ) {

 

try{

 

// creamos un socket asociados al host y puerto

Socket sCliente = new Socket(HOST, PUERTO);

// InputStream nos sirve leer datos

InputStream aux = sCliente.getInputStream();

// DataInputStream permite recibir datos de tipos normales

DataInputStream datos = new DataInputStream(aux);

do { // bucle para recibir datos hasta que entrada sea 'End'

// recibimos los datos

entrada = datos.readUTF();

// imprimimos los datos

System.out.println("Recibido: " + entrada);

} while(!entrada.equals("End")); // comprobamos que entrada no sea 'End'

// cerramos la conexion

sCliente.close();

 

} catch( Exception e ) {

 

System.out.println( e.getMessage() );

 

}

 

}

 

// metodo Main

public static void main( String[] arg ) {

 

new Cliente();

 

}

 

}[/lenguaje]

 

Servidor:

 

[lenguaje=java]// importamos librerias necesarias

import java.io.* ;

import java.net.* ;

 

class Servidor {

 

static final int PUERTO = 5000; // puerto de conexion

static String sTexto = "";

 

public Servidor() {

 

try {

 

System.out.println("A la espera de algun cliente\n");

 

// creamos un socket asociados al puerto

ServerSocket sServidor = new ServerSocket(PUERTO);

// quedamos a la espera de la conexion de algun cliente para aceptarlo

Socket sCliente = sServidor.accept();

// OutputStream nos sirve enviar datos

OutputStream aux = sCliente.getOutputStream();

// DataOutputStream permite enviar datos de tipos normales

DataOutputStream datos = new DataOutputStream(aux);

 

// usamos la clase BufferedReader para leer datos desde teclado

BufferedReader entrada = new BufferedReader(new InputStreamReader(System.in));

System.out.println("Cliente Conectado :)\n");

do { // bucle para enviar datos hasta que entrada sea 'End'

System.out.print(">>> ");

// leemos los datos

sTexto = entrada.readLine();

// escribimos los datos

datos.writeUTF(sTexto);

} while(!sTexto.equals("End")); // comprobamos que entrada no sea 'End'

// cerramos la conexion

sCliente.close();

 

} catch( Exception e ) {

 

System.out.println(e.getMessage());

 

}

 

}

 

// metodo Main

public static void main( String[] arg ) {

 

new Servidor();

 

}

 

}[/lenguaje]

 

Captura:

 

This is the hidden content, please

 

Saludos

Edited by Expermicid
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.