ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Prueba Servidor Java


Enviado por   •  2 de Diciembre de 2012  •  1.215 Palabras (5 Páginas)  •  438 Visitas

Página 1 de 5

// Establece un servidor que recibe una conexión de un cliente, envía

// una cadena al cliente y cierra la conexión.

import java.io.EOFException;

import java.io.IOException;

import java.io.ObjectInputStream;

import java.io.ObjectOutputStream;

import java.net.ServerSocket;

import java.net.Socket;

import java.awt.BorderLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

import javax.swing.JTextField;

import javax.swing.SwingUtilities;

public class Servidor extends JFrame

{

private JTextField campoIntroducir; // recibe como entrada un mensaje del usuario

private JTextArea areaPantalla; // muestra información al usuario

private ObjectOutputStream salida; // ?ujo de salida hacia el cliente

private ObjectInputStream entrada; // ?ujo de entrada del cliente

private ServerSocket servidor; // socket servidor

private Socket conexion; // conexión al cliente

private int contador = 1; // contador del número de conexiones

public static void main (String args [])

{ System.out.println("Bienvenido a la programacion Java");

}

// establece la GUI

public Servidor()

{

super( "Servidor" );

campoIntroducir = new JTextField(); // crea objeto campoIntroducir

campoIntroducir.setEditable( false );

campoIntroducir.addActionListener(

new ActionListener()

{

// envía un mensaje al cliente

public void actionPerformed( ActionEvent evento )

{

enviarDatos( evento.getActionCommand() );

campoIntroducir.setText( "" );

} // ?n del método actionPerformed

} // ?n de la clase interna anónima

); // ?n de la llamada a addActionListener

add( campoIntroducir, BorderLayout.NORTH );

areaPantalla = new JTextArea(); // crea objeto areaPantalla

add( new JScrollPane( areaPantalla ), BorderLayout.CENTER );

setSize( 300, 150 ); // establece el tamaño de la ventana

setVisible( true ); // muestra la ventana

} // ?n del constructor de Servidor

// establece y ejecuta el servidor

public void ejecutarServidor()

{

try // establece el servidor para que reciba conexiones; procesa las conexiones

{

servidor = new ServerSocket( 12345, 100 ); // crea objeto ServerSocket

while ( true )

{

try

{

esperarConexion(); // espera una conexión

obtenerFlujos(); // obtiene los ?ujos de entrada y salida

procesarConexion(); // procesa la conexión

} // ?n de try

catch ( EOFException excepcionEOF )

{

mostrarMensaje( "\nServidor termino la conexion" );

} // ?n de catch

?nally

{

cerrarConexion(); // cierra la conexión

contador++;

} // ?n de ?nally

} // ?n de while

} // ?n de try

catch ( IOException exepcionES )

{

exepcionES.printStackTrace();

} // ?n de catch

} // ?n del método ejecutarServidor

// espera a que llegue una conexión, después muestra información sobre ésta

private void esperarConexion() throws IOException

{

mostrarMensaje( "Esperando una conexion\n" );

conexion = servidor.accept(); // permite al servidor aceptar la conexión

mostrarMensaje( "Conexion " + contador + " recibida de: " +

conexion.getInetAddress().getHostName() );

} // ?n del método esperarConexion

// obtiene ?ujos para enviar y recibir datos

private void obtenerFlujos() throws IOException

{

// establece el ?ujo de salida para los objetos

salida = new ObjectOutputStream( conexion.getOutputStream()

...

Descargar como (para miembros actualizados)  txt (7 Kb)  
Leer 4 páginas más »
Disponible sólo en Clubensayos.com