02.12.2014 Views

Lab 01: Programación de Sockets en TCP - Ingeniería Informática y ...

Lab 01: Programación de Sockets en TCP - Ingeniería Informática y ...

Lab 01: Programación de Sockets en TCP - Ingeniería Informática y ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

import java.io.*;<br />

import java.net.*;<br />

class Servidor<strong>TCP</strong> {<br />

public static void main(String argv[]) throws Exception<br />

{<br />

String s<strong>en</strong>t<strong>en</strong>ciaCli<strong>en</strong>te;<br />

String s<strong>en</strong>t<strong>en</strong>ciaEnMay;<br />

// crear el socket servidor (<strong>TCP</strong>) <strong>en</strong> el puerto 6789<br />

ServerSocket socketServidor = new ServerSocket(6789);<br />

while(true) {<br />

// el socket servidor espera, escuchando por contacto por el cli<strong>en</strong>te,<br />

// si lo acepta un nuevo socket es creado y la conexión es hecha<br />

Socket socketConexion = socketServidor.accept();<br />

// crear un stream <strong>de</strong> <strong>en</strong>trada ligado al socket<br />

BufferedRea<strong>de</strong>r inDes<strong>de</strong>Cli<strong>en</strong>te = new BufferedRea<strong>de</strong>r(<br />

new InputStreamRea<strong>de</strong>r(socketConexion.getInputStream()));<br />

// crear un stream <strong>de</strong> salida ligado al socket<br />

DataOutputStream outAlCli<strong>en</strong>te =<br />

new DataOutputStream(socketConexion.getOutputStream());<br />

// leer el m<strong>en</strong>saje <strong>de</strong>s<strong>de</strong> el socket<br />

s<strong>en</strong>t<strong>en</strong>ciaCli<strong>en</strong>te = inDes<strong>de</strong>Cli<strong>en</strong>te.readLine();<br />

// construir respuesta<br />

s<strong>en</strong>t<strong>en</strong>ciaEnMay = s<strong>en</strong>t<strong>en</strong>ciaCli<strong>en</strong>te.toUpperCase() + '\n';<br />

}<br />

}<br />

}<br />

// escribir el m<strong>en</strong>saje al socket<br />

outAlCli<strong>en</strong>te.writeBytes(s<strong>en</strong>t<strong>en</strong>ciaEnMay);<br />

- En Windows abrir 2 v<strong>en</strong>tanas DOS, e ir al directorio don<strong>de</strong> se <strong>en</strong>cu<strong>en</strong>tran los<br />

programas fu<strong>en</strong>te.<br />

- Si necesario, <strong>en</strong> ambas v<strong>en</strong>tanas, establecer la ruta al compilador y al<br />

intérprete <strong>de</strong> Java<br />

SET PATH=%PATH%;C:\Archivos <strong>de</strong> programa\Java\jdk1.6.0\bin<br />

- En cada v<strong>en</strong>tana, compilar el correspondi<strong>en</strong>te archivo <strong>de</strong> Java<br />

javac Cli<strong>en</strong>te<strong>TCP</strong>.java<br />

javac Servidor<strong>TCP</strong>.java<br />

- En la v<strong>en</strong>tana <strong>de</strong>l servidor ejecutar la aplicación servidor<br />

java Servidor<strong>TCP</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!