Sei sulla pagina 1di 14

TALLER No 3 Modelo Vista Controlador

Denominación:
Nombre y código del
Análisis y Desarrollo de Sistemas de Información - 228106 / 102
Programa de formación:
Guía de aprendizaje No 2 Conceptualización y Formulación del
Sistema de Información.

Fase Planeación.
Identificación del taller
A. P. 4 Diseñar la arquitectura de software para al sistema de
información propuesto de acuerdo a los requisitos del cliente.

A.A.8: Proponer la arquitectura tecnológica el proyecto que soporte


el modelo de información planteado.
Duración estimada horas y
fecha de entrega: 10 horas

Estrategias didácticas Taller - foro


activa
B-Learning
Modalidad del trabajo:
Aula con equipos de cómputo, un equipo máximo para tres
Ambiente de formación:
personas
Computador de escritorio o portátil, bloc de hojas cuadriculadas,
Materiales de formación:
esfero, lápiz, borrador.
 AA_ Actividad de Aprendizaje AP_ Actividad de Proyecto

I. PRESENTACIÓN

Persistencia de datos con java con el patrón MVC.

II. OBJETIVO(S)

 Determinar los parámetros necesarios para recoger los datos de la capa de presentación.
 Insertar datos en una base de datos desde una interfaz en gráfica.
 Construir aplicaciones en java mediante la utilización del patrón Modelo, Vista, Controlador.

III. DESCRIPCIÓN DEL TALLER

Este taller consiste en realizar la implementación de aplicaciones con Java, (Conexión, inserción y
selección de datos).

MODELO VISTA CONTROLADOR

Conceptos.
Definición.

[Gamma] Un patrón de diseño es una descripción de clases y objetos comunicándose entre sí adaptada
para resolver un problema de diseño general en un contexto particular. El uso de patrones ayuda a
obtener un software de calidad (reutilización y extensibilidad).

Elementos de un patrón de diseño.

Nombre: Describe el problema de diseño.

El problema: Describe cuándo aplicar el patrón.

La solución: Describe los elementos que componen el diseño, sus relaciones, responsabilidades y
colaboración.

Clasificación.

Según su propósito:

– De creación: conciernen al proceso de creación de objetos.

– De estructura: tratan la composición de clases y/o objetos.

– De comportamiento: caracterizan las formas en las que interactúan y reparten responsabilidades las
distintas clases u objetos.
Ilustración 1 Patrones de diseño

Modelo-Vista-Controlador (MVC), es un patrón de arquitectura de software, que separa los datos y


la lógica de negocio de una aplicación de su presentación.

Ilustración 2 Modelo Vista Controlador


Para lo cual el patrón MVC propone la construcción de aplicaciones software mediante la utilización
de 3 módulos o componentes: El modelo, la vista y el controlador.

Modelo. Encargado de todo el proceso lógico de la aplicación. Es decir, es el que representa el proceso de
manejo de la información con la que la aplicación opera (consultas, conexiones, entidades, entre otras.

Vista. Es la encargada de permitir la interacción de la información resultante del proceso generado


por el modelo, generalmente se le denomina interfaz de usuario).

Controlador. Es el encargado de responder a las acciones del usuario y su función es invocar desde y
hacia el modelo alguna solicitud. En otras palabras, es el intermediario entre la vista y el modelo.

Estructura de proyecto 1.

*** Estructura 1***

//Clase Modelo

package Modelo;

public class Datos {

private int numeroUno;


private int numeroDos;
private int resultados;

/**
* @return the numeroUno
*/
public int getNumeroUno() {
return numeroUno;
}

/**
* @param numeroUno the numeroUno to set
*/
public void setNumeroUno(int numeroUno) {
this.numeroUno = numeroUno;
}
/**
* @return the numeroDos
*/
public int getNumeroDos() {
return numeroDos;
}

/**
* @param numeroDos the numeroDos to set
*/
public void setNumeroDos(int numeroDos) {
this.numeroDos = numeroDos;
}

/**
* @return the resultados
*/
public int getResultados() {
return resultados;
}

/**
* @param resultados the resultados to set
*/
public void setResultados(int resultados) {
this.resultados = resultados;
}

public int Multiplicar(){

this.resultados = this.numeroUno * this.numeroDos;


return this.resultados;
}

}
*** Estructura 2***

//Clase Vista

*** Estructura 3***

//Clase Controlador

package Controlador;

import Modelo.Datos;
import vistaMVC.VistaMvc;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class ContraladorOperacion implements ActionListener{

private VistaMvc view;


private Datos modelDatos;

public ContraladorOperacion(VistaMvc view, Datos modelDatos)


{
this.view = view;
this.modelDatos = modelDatos;
this.view.btnMultiplicar.addActionListener(this);
}

public void iniciar(){


view.setTitle("MVC Multiplicar");
view.setLocationRelativeTo(null);
}

public void actionPerformed(ActionEvent e){


modelDatos.setNumeroUno(Integer.parseInt( view.txtNumero1.getText()));
modelDatos.setNumeroDos(Integer.parseInt( view.txtNumero2.getText()));
modelDatos.Multiplicar();
view.txtResultado.setText(String.valueOf( modelDatos.getResultados()));
}

*** Estructura 4***

//Clase Ejecución (Principal)

public class MVC {

public static void main(String[] args) {


Datos mod = new Datos();
VistaMvc view = new VistaMvc();

ContraladorOperacion control = new ContraladorOperacion(view, mod);


control.iniciar();
view.setVisible(true);

}
}
Estructura de proyecto 2.

*** Estructura 1***

//Clase Controlador

import Modelo.DatosDAO;
import Vista.Informacion2;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;

public class ControlDatos implements ActionListener{

Informacion2 vistaDatos = new Informacion2();


DatosDAO modeloDatos = new DatosDAO();

int identificacion;
String nombres;
String apellido;

//Constructor con parametros


public ControlDatos(Informacion2 vistaDatos, DatosDAO modeloDatos){

this.modeloDatos=modeloDatos;
this.vistaDatos=vistaDatos;

vistaDatos.BotonG.addActionListener(this);

}
@Override
public void actionPerformed(ActionEvent e) {

if(e.getSource()==vistaDatos.BotonG){

identificacion=Integer.parseInt(vistaDatos.tid.getText());
String id=Integer.toString(identificacion);
nombres=vistaDatos.tnomb.getText();
apellido=vistaDatos.tape.getText();
modeloDatos.insertar(identificacion, nombres, apellido);
JOptionPane.showMessageDialog(null, id);
JOptionPane.showMessageDialog(null, nombres);
JOptionPane.showMessageDialog(null, apellido);
}
}

}
*** Estructura 2***
//Clase Modelo DAO

import Vista.Informacion2;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.swing.JOptionPane;
import javax.swing.*;
import java.awt.*;

public class DatosDAO {

Datos dato=new Datos();


Informacion2 info=new Informacion2();

public DatosDAO(){
}

public String insertar(int identificacion, String nombres, String apellido){


String registrar=null;

try {
dato.setIdentificacion(identificacion);
dato.setNombres(nombres);
dato.setApellido(apellido);

JOptionPane.showMessageDialog(null, "La Información ha sido registrada


correctamente.");
return registrar;

catch(Exception e){}
return registrar;
}
}
*** Estructura 3***
//Clase Modelo Datos
public class Datos {
int identificacion;
String nombres;
String apellido;

public Datos() {

//nombres="";
//apellido="";
}

//Constructor con parametros


public Datos(int identificacion, String nombres, String apellido) {
this.identificacion = identificacion;
this.nombres = nombres;
this.apellido = apellido;
}

public int getIdentificacion() {


return identificacion;
}

public void setIdentificacion(int identificacion) {


this.identificacion = identificacion;
}

public String getNombres() {


return nombres;
}

public void setNombres(String nombres) {


this.nombres = nombres;
}

public String getApellido() {


return apellido;
}

public void setApellido(String apellido) {


this.apellido = apellido;
}

}
*** Estructura 4***

//Modelo Vista
*** Estructura 5***

//Clase Ejecución (Principal)

import Controlador.*;
import Modelo.*;
import Vista.*;

public class Ejecucion {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Informacion2 vistaDatos=new Informacion2();
DatosDAO modeloDatos=new DatosDAO();
ControlDatos controlador=new ControlDatos (vistaDatos,
modeloDatos);
vistaDatos.setVisible(true);
vistaDatos.setLocationRelativeTo(null);

}
SERVICIO NACIONAL DE APRENDIZAJE SENA Bogotá D.C.
REGIONAL DISTRITO CAPITAL
Versión: 02
CENTRO DE SERVICIOS FINANCIEROS
PLANTILLA TALLER

IV. EVIDENCIAS O ENTREGABLES ASOCIADOS AL TALLER

Se debe implementar el código en Java (Netbeans) del modelo vista controlador para las
estructuras propuestas y documentar el procedimiento.

Bibliografía.

Desing Patterns. E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns.


Addison Wesley, 1995.

Patterns Home Page: http://hillside.net/patterns/

Thinking in patterns with java http://www.mindview.net/Books/TIPatterns/

CONTROL DEL DOCUMENTO

Nombre Cargo Dependencia Fecha

Autor (es) Lorena Caicedo Instructora UTI 05/03/2019

Revisión

Aprobación

CONTROL DE CAMBIOS

Nombre Cargo Dependencia Fecha Razón del Cambio

Autor (es)

Revisión

Aprobación

14

Potrebbero piacerti anche