EXPLICACIÓN DE LA FUNCIONALIDAD DE UN SERVIDOR NATIVO DESDE
JAVA (SOCKET)
Por medio de una guía de aprendizaje se dio la indicación de
la creación de una wiki que se encargara de recopilar la funcionalidad del código
aplicado durante la misma y con los criterios a adicionar por parte del aprendiz,
la creación de esta wiki busca cumplir con los requerimientos solicitados para
recopilar la funcionalidad de un servidor interno y nativo desde java con la
clase Socket (cabe aclarar que no es el titulo original de la actividad a la
que refiere, sin embargo a consideración del editor y aprendiz es el tema
central).
Para esta actividad se tienen en cuenta los siguientes criterios:
- Para esta explicación se tendrá en cuenta únicamente las
partes más importantes del mismo parra no alargar innecesariamente esta publicación.
- Con respecto al Código y a la explicación del docente
sobre el mismo, se buscó un cambio en cuanto al nombre de las variables y métodos
- Por medio de capturas obtenidas directamente desde el
editor de Código utilizado (Apache NetBeans IDE 17) se explicará el Código.
Archivos y explicación de Código:
1. ClienteHilo.
Dentro de este archivo se genera el siguiente código:ClienteHilo, que extiende de la clase Thread tiene la función
de crear las clases: In & Out, las
cuales son un acceso directo a lo que es
el servidor nativo que en un momento se
creara; gracias a estas clases es que podemos ingresar valores directamente
al servidor.
ServerHilo, al igual que ClienteHilo busca crear una serie
de accesos al servidor, en este caso le
agrega el String datos que más adelante va a permitir mostrar una serie
de Strings o Ints dentro de lo que le pidamos
que muestre el servidor.
Dentro del servidor, lo que creamos es un ServerSocket que
almacene temporalmente una serie de datos, los cuales, claramente no los tendrá
de base el servidor, los mismos tendrá
que ser digitados por el usuario dentro
de una clase que en un momento se explicara; el servidor da una serie de requerimientos, es decir requisitos para poder cumplir las
funciones establecidas, las cuales para el ejemplo son almacenar temporalmente
lo ingresado, el servidor por defecto quedara encendido dentro del editor de código, y tiene que estarlo para poder recibir la información necesaria.
Este archivo tiene dos partes, esta imagen es la primera, se
está creando el acceso y la conexión directa con el servidor antes comentado,
la ip establecida por defecto (la que tiene el servidor) es 127.0.0.1 con el
puerto 5000; a partir de esto se crean las instancias que en los anteriores
archivos se había creado, como in o out, a partir de estas se ingresara la información
obtenida de los requisitos que pedía la actividad, los cuales eran:
- Se deben pedir 10 números.
- La suma de todos estos.
- Encontrar el número mayor y menor.
A partir de esto se crea un ciclo for para pedir los diez números,
se empieza el contador desde 1 hasta que se cumpla la condición de ser igual a
10, este se pide a partir del ingreso de datos del usuario por parte de la
clase Scanner, y por medio de la misma el valor de cada número se almacena temporalmente
(1=100 es un ejemplo), en cuanto a encontrar el número mayor y menor, por medio
de un condicional if se solicita que el numero < menor, siendo menor una
variable resultante de un Integer.MAX_VALUE, que busca iniciar con el mayor número
posible de la variable, y el condicional lo que hace es preguntar si este número
es menor que el número que el usuario estará digitando, con cada número que
pregunte se hará este proceso, modificando su valor constantemente, es la misma
teoría para el numero mayor.
Lo que se busca aquí es la impresión en la terminal del
resultado de la suma de todos los números y el menor y mayor de todos los
ingresados, además por medio del uso de la creación de una variable se ingresan
estos valores para enviarlos directamente al servidor con las instancias y
requisitos que el mismo necesita para poder mostrarlas en la consola del
servidor. Para todo este proceso fue necesario el uso de un Try & Catch, que
se encargara de instanciar todo el proceso, por si durante ocurre algún error
siguiera ejecutando en cuando fuera capaz el programa en cuestión.
Para la correcta ejecución del programa, primero se debe
encender el servidor por medio de Shift + F6, la consola se abrirá, saldrá un
mensaje y la ejecución quedará en segundo plano, se puede ver de la siguiente
forma:
Luego, se ejecuta el archivo Cliente y desde allí saldrá un
mensaje que indicara donde se debe ingresar el dato del numero solicitado,
posterior al ingreso de los 10 números solicitados, el programa mostrara cual
es el numero mayor, el numero menor y la suma total de datos, y la terminación del
programa.
Posterior al resultado que arroja Cliente, se regresa a la
terminal del servidor y se puede observar lo siguiente:
De esta forma se da por terminada la explicación del
programa solicitado en la actividad número 2 del curso complementario. El código
completo se podrá encontrar en el siguiente link:
Este post fue creado por Andres Bonilla, aspirante.








wow que increible! sigue asi!
ResponderBorrarGracias :)
Borrar