JTagua

Inicio » Servlet » Ejemplos » Detalle Fármacos.

Archivo de la categoría: Detalle Fármacos.

Servlet 04: Detalle Fármacos.

PROBLEMA PROPUESTO.

Se desea incorporar a una aplicación web un generador de informes con los datos en forma tabular y en forma gráfica a través de diagramas de barras verticales de los consumidores y consumidoras de los distintos tipos de medicamentos por sexo y por segmento de edad para un año dado.

 Para resolver el problema anterior, se ha diseñado una primera página index.jsp tal como la que se muestra mas abajo,

Image7

Esta interfaz contiene:

  •  Dos cajas de selección, sexo y tramo de edad.
    • Sexo: En esta caja sólo existen dos valores, Hombres (valor por defecto) y Mujeres.

    • Tramos de edad: En esta caja existen 5 opciones, De 0 a 15 años, De 16 a 24 años, De 25 a 44 años (valor por defecto), De 45 a 64 años y Mayores de 65 años.

  • Un botón para someter el formulario a un servlet, y éste a su vez controlará una clase que le sirva de modelo (MVC) para controlar la apertura, accesos y cierre de la base de datos.

El funcionamiento de la interfaz es el siguiente,

 Primera parte: Esta función se ejecutará tan pronto se seleccione el botón “Someter”, como es obvio el servlet que recibe esta acción tendrá en consideración cualquiera de las dos

selecciones: Sexo y tramo de edad. Y así por ejemplo, si se selecciona Mujeres de 16 a 24 años, aparecerá;

Image8

Donde puede verse que que los datos se corresponden a lo solicitado: Número (en miles) de Hombres de 25 a 44 años que tomaron los tipos de farmacos: Anticatarrales, Analgésicos, Antipiréticos, Reconstituyentes, Lasantes, Antibióticos, Tranquilizantes, Alergia, Reuma, Corazón, Tensión arterial, Estómago, Antidepresivos, Anticonceptivos, Menopausia, Colesterol y Antidiabéticos. (Este informe es el mismo que para Hombres, aunque obviamente con distintos datos). Como es natural, con las dos selecciones (sexo y tramo de edad) existen diez posibilidades, cinco para cada sexo.

 Segunda Parte: Si en la pantalla anterior se selecciona “Detalle” aparecerá el número de Hombres/Mujeres (en este caso Hombres) que consumieron el tipo de fármaco dependiendo de la línea pulsada por tramos de eedad. Esto es:

Image9

Como vemos tenemos una tabla del número de miles de hombres que tomaron farmacos (Lasantes) por grupos de edad.

Vemos igualmente un enlace para volver (Inicio) y otro para ir a la tercera parte del problema.

 Tercera Parte: Si en la pantalla anterior se selecciona “Gráfico” aparecerá el gráfico de la tabla anterior en un diagrama de columnas. Esto es:

Image10

La base de datos del problema se llama farmacos (MySQL), y coincide con la del problema propuesto anterior.

Tenga presente que los informes del INE (Instituto Nacional de Estadística) referido a este estudio jamás ha cambiado los 17 tipos de fármacos, así como los tramos de edad desde que está entregando dicha información. Esto significa que existe una posible simplificación de programación, que aunque menos elegante, es igualmente operativa y es considerar un array interno tanto los tramos como los farmacos.

Notas:

Se entrega para resolver el problema,

 

  • Imágenes farmacia.jpg, infgrafico.jpg, inftabular.jpg
  • Script backup necesario denominado Backup_Farmacos.sql necesario para montar la base de datos del problema
  • Componentes de la librería gráfica JfreeChart (jcommon-1.0.15.jar y jfreechart-1.0.12.jar)

 

SE REQUIERE OBLIGATORIAMENTE RESOLVER EL PROBLEMA DE ACUERDO AL MODELO VISTA CONTROLADOR.(MVC)