GESTIÓN DE FORMACIÓN PROFESIONAL INTEGRAL
PROCEDIMIENTO DESARROLLO CURRICULAR
GUÍA DE APRENDIZAJE
1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE
Denominación del Programa de Formación: Tecnología en Análisis y Desarrollo de Sistemas de
Información.
Código del Programa de Formación: 228106 v101
Nombre del Proyecto: Sistema de Información para manejo de análisis físico químico y
microbiológico de calidad de aguas para consumo humano para laboratorio de aguas ubicado en
el centro de gestión agro empresarial del oriente (Código 1139209).
Fase del Proyecto: Ejecución.
Actividad de Proyecto: Desarrollar la estructura de datos y la interfaz del usuario del sistema de
información.
Competencia: Desarrollar el sistema de información que cumpla con los requerimientos de la
solución informática.
Resultados de Aprendizaje Alcanzar: Crea la base de datos en el motor de base de datos
seleccionado, siguiendo especificaciones técnicas del informe, según normas y protocolos de la
empresa.
Duración de la Guía: 42h presencial + 12h LMS
2. PRESENTACION
En esta actividad de aprendizaje usted Desarrollará el sistema de información con conexión a la base de
datos y acciones CRUD.
El patrón MVC (Modelo – vista - controlador), permite una clara separación entre los
diferentes componentes de una aplicación, en java para escritorio se puede aplicar la
misma filosofía dentro de cada package.
El acceso a la base de datos se hace realizando el patrón de diseño Singleton ya que
solo se desea tener un único acceso a la base de datos (a no ser que hayan varias
sedes).
3. FORMULACION DE LAS ACTIVIDADES DE APRENDIZAJE
3.1 Realizar un formulario para la siguiente clase:
Auto
-idAuto: int;
-marcaAuto: String;
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
-modeloAuto: Date;
-cantidadPuertas: int;
-color: String;
+getIdAuto():String;
+setIdAuto(int elId)
+getMarcaAuto():String;
+setMarcaAuto(String marca)
+getCantidadPuertas():int
+setCantidadMarcas(int cantidad)
+getColor():String
+setColor(String elColor)
+listar():Iterator
+insertar()
+modificar()
+eliminar()
(Se puede observar JLabel, JComboBox, JButton, JSpinner, JTextField, JTable,
JFormattedTextField)
El procedimiento es el siguiente:
Recuerde que primero debe crear un proyecto
desde el menú: File > New Project, sin clase
principal (quitar el checkmark)
El segundo paso es crear los tres paquetes
modelo, vista y controlador; para crear un
paquete de clic derecho en la carpeta
llamada Source Package > New > Java
Package… > escriba vista (recuerde también
crea modelo y controlador)
El tercer paso es insertar un MDI dentro del
paquete vista con File > New File > Swing GUI
Forms > MDI Sample Form; El nombre del MDI
debe iniciar con las letras MDI además, fíjese que
donde dice package quede seleccionado vista.
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
De la misma forma agregar un
JInternalFrame dentro del paquete vista, de
clic derecho sobre el paquete vista > New >
Other… > Swing GUI Forms >
JInternalFrame Form, esta vez el nombre
debe comenzar con FRM
La estructura debe quedar algo similar al
pantallazo que aparece:
Tip: Si creó el MDI o el FRM en otro package equivocado o en el source package puede moverlos
dando clic derecho sobre el archivo > Refactor > Move… > Selecciona el package correcto.
Hasta el momento tenemos tres paquetes, y dentro del paquete vista un MDI y un FRM, en los
proyectos debería haber un solo MDI y varios FRM; generalmente cada FRM podría ser una tabla
de su base de datos.
De doble clic sobre el FRM creado y agregue los componentes que se piden al inicio de esta
actividad (3.1)
Si ejecuta la aplicación por primera vez Netbeans le pedirá que seleccione la clase principal,
donde seleccionaremos la única que aparece: MDISistemaClientes
3.2 Inicie su servidor de base de datos puede ser MySQL a través de XAMPP (o desde
MySQLWorkbench) y cree una base de datos llamado sistemaclientes con una tabla llamada
Clientes y 5 campos (idCliente SMALLINT AUTOINCREMENT, nombreCliente VARCHAR(50),
documentoCliente VARCHAR(15), direccionCliente VARCHAR(50), celularCliente VARCHAR(13)),
luego INSERTe 5 clientes.
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Dentro del paquete modelo vamos a agregar
una conexión a la base de datos usando
Singleton así: clic derecho sobre el package
modelo > New > Other… > Java > Java
Singleton
Como nombre colocamos ConexionBD, fíjese
que el package sea modelo
Luego aparece la plantilla de la clase singleton lista para codificar entonces escribimos el
siguiente código:
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Tip: Un proyecto debería tener una sola ConexionBD dentro del package modelo.
3.3 Cargar el driver conector de la base de datos:
De clic derecho sobre el paquete Libraries, luego de clic en Add Library…, seleccione MySQL JDBC
3.4 Configurar el MDI de la siguiente manera:
Para poder visualizar el formulario
inicialmente debemos renombrar el fondo
negro que aparece en el MDI, para ello de
doble clic en el MDI y luego clic derecho
sobre el fondo negro > Change Variable
Name… > escritorio.
Renombramos el menú File dando un solo clic en
el menú File y de luego clic derecho > Edit Text.. >
Administrar y luego nuevamente clic derecho y
Change Variable Name > MNUAdministrar
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Agregamos más ítems al menú entre ellos uno que
se llame Auto dando clic derecho sobre el menú
Administrar > Add from pallete > Menu Item.
Damos clic sobre el nuevo Menu Item creado y con
clic derecho > Edit Text > Auto, de igual manera
Change Variable Name… > ItemAuto.
De igual manera cambiamos el texto del menú que
dice “Exit” a Salir y el nombre de variable a
itemSalir
Procedemos a codificar el MDI para ello damos clic
en Source, si deseamos volver a ver el formulario
damos clic en Desing.
Para que podamos usar los FRM debemos
agregarlos al MDI como atributos en este caso solo
agregamos el formulario creado.
Agregamos a dentro del constructor (que ya esta
creado) la conexión a la base de datos antes del
initComponents(), luego instanciamos todos los
formularios.
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Ahí mismo, justo debajo de los formularios
instanciados agregamos al escritorio los
mismos mediante el método add
A continuación ir al modo “Desing“ menu
Administrar y dar doble clic en el menú Salir y
programar la acción para desconectar la base
de datos, cerrar los formularios y después la
aplicación.
Luego dar doble clic en el item del menú Auto
y codificar la acción para poner visible el
formulario.
Tip: Para codificar un login debería poner todos los ítems de los menus con enabled(false) desde
el panel Properties, excepto el item Salir
3.5 Codificar el modelo Cliente con constructor vacio, con los mutators (getters y setters), esto
debe hacerlo dentro del paquete modelo.
Crear la entity class [Link] dentro del
package modelo dando clic derecho sobre
este paquete > New > Java Class…
Poner como nombre Cliente (fíjese que la “C”
de Cliente quede en mayúscula) y que el
package sea modelo.
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Escribimos los atributos de la clase con el
respectivo tipo de dato String, int, Date, … y
luego damos Enter y clic derecho donde
quedo parpadeando el curso y seleccionamos
Insert Code…
A continuación damos clic en Getter and
Setter…
Y chequeamos todos los campos.
Finalmente dar clic en Generar
Se crearan los getters y setters:
Insertamos el método toString() el cual es util
cuando querramos mostrar un dato
representativo de la clase en una tabla o en un
JComboBox, nos ubicamos justo después del
ultimo método y damos clic derecho > Insert
Code… > toString()…
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Solo seleccionamos el dato representativo en
este caso puede ser el nombreCliente
De igual manera agregamos el equals() clic
derecho sobre un espacio en blanco del
código > Insert Code… > equals() and
hashCode()
Solo se checkea el idCliente para el equals, el
cual nos permitira realizar comparaciones
basado en el idCliente luego clic en Generar.
Esto es útil a la hora de realizar búsquedas por
ejemplo cuando seleccionemos un Item de un
JComboBox desde el código.
3.6 Codificar los metodos CRUD dentro de misma la clase Cliente
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
//El siguiente codigo es útil para llenar el JTable cuando tenemos una llaves foráneas (o
JComboBox)
Finalmente recuerde que debe cerrar toda la clase con el corchete que cierra.
3.7 Crear la clase ControladorCliente dentro del paquete controlador
Para ello cree una nueva Java Class (File > New File > Java > Java Class)
Y cree un método llamado controlarAccion como el que aparece en el siguiente pantallazo
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
3.8 Cree la vista para la clase Cliente.
Dentro del paquete vista cree un
JinternalFrame Form que llamara FRMCliente
Luego en el panel Properties buscara y
ajustara el valor de:
closable a true (que este con el checkmark),
defaultCloseOperation a HIDE,
title con “Formulario Cliente”
Closable significa que aparezca el botón de
cerrar (en la esquina de la ventana) .
Ahora genere un formulario como el siguiente, a medida que va insertando componentes debe
ponerle nombre (variable name) para los JLabel debe iniciar con LBL por ej. LBLNombre,
LBLDocumento, para las JTextFields y JFormattedTextField debe iniciar con TXT por. TXTIdCliente,
TXTNombreCliente, todos lo datos númericos debe ponerles el texto de 0 (cero); para los Jbutton
debe iniciar con BTN ej. BTNInsertar, BTNCerrar, BTNBuscar, las Tablas con TBL ej. TBLCliente
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
A continuación se muestran los nombres de los componentes:
Ahora agregamos el controladorCliente justo
debado del public class y encima del
contructor;
Adicionalmente dentro del constructor
después del initComponente() le colocamos
un valor al Id y lo ocultamos
Ahora al final del código del formulario
agregamos el codigo del pantallazo.
Que inicializa cajas de texto, pone botones
deshabilitados y vuelve a llenar la tabla.
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Al final del código del formulario agremamos
el código del pantallazo.
Volvemos al modo “Desing” y damos
doble clic en el boton Cerrar y
codificamos lo siguiente
doDefaultCloseAction();
(ojo!, no repita lo que esta sobreado
con gris)
Nuevamente volvemos al modo Desing y boble clic en el botón de Insertar, en el botón Modificar
y en el botón Eliminar y agregue el código que aparece dentro de cada método.
Ahora agregue método del pantallazo al final
de la clase.
Regrese al modo “Desing” y Clic derecho sobre la Tabla > Events > mouseClicked
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Codifique dentro del método
recien creado el siguiente
código
Volvemos al modo “Desing” y
escribimos el código que
aparece en el pantallazo
Al final de la clase agregamos el siguiente
método con el respectivo código que aparece
en el pantallazo
Regrese al modo “Desing” y Clic derecho sobre la caja de texto de busqueda > Events >
focusGained
Codifique dentro del método reciencreado
el codigo que aparece (ojo no repita lo que
esta sobreado en gris)
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
De igual manera proceda pero con focusLost,
Clic derecho sobre la caja de texto > Events >
focusLost
Puede aplicar lo mismo pero solo a los JTextField
El siguiente código es de ejemplo si necesita usar un combo box en algún momento con datos por
ejemplo cuando use llaves foráneas:
Agregue el comboBox de la paleta y ponga el “variable name” que inice el nombre con CBO ej
CBODepartamento
Luego en Propierties de clic en la pestaña
Code (sombreada en Azul) y donde dice “Type
Parameters” ponga “<Departamento>”.
Esto es para que el combo solo sea de
Departamentos.
Ahora cree un método que se
llame
llenarComboDepartemento()
con el código que aparece en el
pantallazo.
(ojo no escriba lo que esta
sombreado con gris)
y el metodo de obtener que incluye la forma de obtener datos del JComboBox y ademas la forma
de obtener la fecha de un JSpinner configurado para mostrar fechas.
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Deberia también modificar el
metodo llenarTabla y
llenarTablaConBusqueda fijese en
donce dice filaCompra[1] es para
cuando use JComboBox
En TBL MouseClicked modificar la fila que
contiene el comboBox (si necesita
también el manejo de fechas en el
pantallazo aparece como cargar fechas)
Tip: Para el manejo de fechas puede usar un Jspinner y en el model lo configura a Date.
En el método limpiarFormulario() puede agregar el código para reinicializar la fecha:
[Link](new [Link]());
Suba todos los archivos generados al link designado por el instructor en la plataforma LMS.
Para desarrollar la anteriores actividades se requiere de un ambiente tipo aula con mesas y equipos de
computo con conexión a internet, UPS, sillas ergonómicas, televisor con entrada HDMI o MHL, tablero
acrílico, extintor blanco, escoba, recogedor, papeleras de reciclaje.
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
Para desarrollar la anterior actividad se requiere de los siguientes materiales: Tener en el computador
instalado cualquier sistema operativo con interfaz gráfica (Microsoft windows, linux, macos), navegadores
web: firefox, google chrome, opera; IDEs como visual studio code, [Link], notepad++, netbeans y
servidores como xampp o easyphp, suite ofimatica libreoffice o microsoft office.
4. ACTIVIDADES DE EVALUACIÓN
Realice el MVC para su proyecto formativo, para ello recuerde los pasos:
1. Crear un proyecto sin clase principal.
2. Crear los tres paquetes (modelo – vista –controlador)
3. Crear la ConexionBD en el paquete “modelo”
4. Crear el MDI en el paquete “vista” y renombrar el fondo negro con “escritorio”
5. Crear los modelos, controlares y vistas (JInternalFrame) necesarios.
Evidencias de Aprendizaje Criterios de Evaluación Técnicas e Instrumentos de
Evaluación
Evidencias de Conocimiento : - Crea la base de datos en el Técnica de Evaluación:
No motor de base de datos Formulación de Preguntas
Evidencias de Desempeño: seleccionado, siguiendo Instrumento de Evaluación:
No. especificaciones técnicas del Cuestionario
Evidencias de Producto: informe, según normas y
- Algoritmos implementados en protocolos de la empresa. Técnica de Evaluación:
java. Observación Sistemática
Instrumento de Evaluación:
Lista de Chequeo
Técnica de Evaluación:
Valoración de producto
Instrumento de Evaluación:
Lista de Verificación
5. GLOSARIO DE TERMINOS.
Array: También llamado vector, es un conjunto de datos a los cuales se puede acceder por su índice el cual
comienza en uno ej. String[] nombres = {“Indigo”,”Terracota”,”Cyan”,”Magenta”,”Verde”}; el nombre[2]
será “Cyan”.
Atributo: Es una variable que se declara al nivel de la clase no por dentro de los métodos y puede ser
usada en cualquier método de la clase.
Método: Es un conjunto de declaraciones de variables y operaciones envueltas dentro de una función que
puede ser llamada dentro de la misma clase o dependiendo del nivel de acceso desde otra clase.
GFPI-F-019 V3
SERVICIO NACIONAL DE APRENDIZAJE SENA
Procedimiento de Desarrollo Curricular
GUÍA DE APRENDIZAJE
6. REFERENTES BIBLIOGRAFICOS
Antonio Golcalves, Beggining Java EE 7, 2013, APress.
S G Ganesh, Tushar Sharma, Oracle Certified Professional Java SE 7 Programmer Exam 1Z0-804 and 1Z0-
805 A comprensive OCJP Certification Guide, 2013, APress.
Josh Juneau, Java EE 7 Recipes A Problem solution approach.
Laurent Debrauwer y Thierry Groussard, Patrones de Diseño y Java, 2010, Ediciones ENI.
7. CONTROL DEL DOCUMENTO
Nombre Cargo Dependencia Fecha
Autor (es) Germán Alberto Cruz Instructor Coordinación 15 de febrero 2017
Vargas Académica
8. CONTROL DE CAMBIOS
Nombre Cargo Dependencia Fecha Razón del Cambio
Autor (es) Germán Alberto Cruz Instructor Coordinación 15 de Se actualizó el
Vargas Académica febrer formato de guía al
o 2017 actual.
GFPI-F-019 V3
GESTIÓN DE FORMACIÓN PROFESIONAL INTEGRAL
PROCEDIMIENTO DESARROLLO CURRICULAR
GUÍA DE APRENDIZAJE
GFPI-F-019 V3