Está en la página 1de 27

Programación

Básica
Heiver Cuesta Dávila
heivercuesta @ gmail.com
M.V.C
Utilizar Metodología MVC:

M.V.C
Es una propuesta de arquitectura del software
utilizada para separar el código por sus distintas
responsabilidades, manteniendo distintas capas
que se encargan de hacer una tarea muy concreta,
lo que ofrece beneficios diversos.
Utilizar Metodología MVC:

M.V.C
M Modelo
V Vista o Interfaz
C Controlador
Utilizar Metodología MVC:

USUARIO

CONTROLADOR

MODELO VISTA
index.jsp 1
Utilizar Metodología MVC:

USUARIO

String usu = txtUsuario


String cla = txtClave

2
CONTROLADOR

MODELO VISTA
index.jsp 1
Utilizar Metodología MVC:

USUARIO

String usu = txtUsuario


String cla = txtClave

2
CONTROLADOR
ControlerUser.java

String usu1 = usu


String cla1 = cla 3

MODELO VISTA
Usuarios.java index.jsp 1
Utilizar Metodología MVC:

USUARIO

String usu = txtUsuario


String cla = txtClave

2
CONTROLADOR
ControlerUser.java

String usu1 = usu


String cla1 = cla 3 4

MODELO VISTA
Usuarios.java index.jsp 1
Utilizar Metodología MVC:

USUARIO

String usu = txtUsuario


String cla = txtClave

2
CONTROLADOR
ControlerUser.java

String usu1 = usu


String cla1 = cla 3 4
5

MODELO VISTA
Usuarios.java index.jsp 1
error.jsp

menuAdmin.jsp
Utilizar Metodología MVC:

USUARIO

String usu = txtUsuario


String cla = txtClave

2
CONTROLADOR
ControlerUser.java

String usu1 = usu


String cla1 = cla 3 1
4
5

MODELO VISTA
Usuarios.java index.jsp
error.jsp
6
menuAdmin.jsp
Ejercicio
MVC
Estructura Aplicativo:
MVC
Clase Principal:

public static void main(String[] args) {


modelo modelo = new modelo();
vista vista = new vista();
controlador controlador = new controlador(vista, modelo);

//controlador.iniciar_proceso();
controlador.iniciar_vista();
vista.setVisible(true);
}
MVC
Modelo:

public class modelo {

private int valor1;


private int valor2;
private int total = sumar();

}
MVC
Modelo:
public int getValor1() {
return valor1;
}
public void setValor1(int valor1) {
this.valor1 = valor1;
}
public int getValor2() {
return valor2;
}
public void setValor2(int valor2) {
this.valor2 = valor2;
}
public int getTotal() {
return total;
}
MVC
Modelo:

public int sumar() {


this.total = this.valor1 + this.valor2;
return this.total;
}
}
MVC
Controlador:

Recordemos que el Controlador es el encargado de Comunicar la Vista


Con el Modelo. Por tal motivo, debemos implementar ActionListener que
Es un escucha que se puede crear en la clase ya sea como librería o
Al final de clase. Para poderlo ver:

Debemos implementar un método:

public void actionPerformed(ActionEvent e) {

http://www.myjavazone.com/2010/06/actionlistener.html
Controlador: MVC

Cuando adicionemos el método:

Debemos implementar un método:

public void actionPerformed(ActionEvent e) {

Observamos que en el clase se adiciona cualquiera de las siguientes dos


Opciones:
import java.awt.event.ActionEvent;

public class controlador implements ActionListener{


Controlador: MVC

Dentro del Método:

Debemos implementar un método:

public void actionPerformed(ActionEvent e) {

Preguntamos si están dando un evento sobre los Botones como


Se muestra en la siguiente diapositiva.
Controlador: MVC

public void actionPerformed(ActionEvent e) {

if ( e.getSource().equals(this.vista.btnPesos)) {

JOptionPane.showMessageDialog(null, " Realizar Operación");


modelo.setValor(Double.valueOf(vista.txtvalor.getText()));
modelo.Apesos();
vista.txtresultado.setText(String.valueOf(modelo.getResultado() + " Pesos "));
}

if ( e.getSource().equals(this.vista.btnDolares)) {
JOptionPane.showMessageDialog(null, " Realizar Operación");
modelo.setValor(Double.valueOf(vista.txtvalor.getText()));
modelo.Adolares();
vista.txtresultado.setText(String.valueOf(modelo.getResultado() + " Dollares "));
}

if ( e.getSource().equals(this.vista.btnSalir)) {
System.exit(0);
}
}
MVC
Controlador:

public class controlador implements ActionListener{


private vista vista;
private modelo modelo;
private ActionListener l;

public controlador(vista vista, modelo modelo) {


this.vista = vista;
this.modelo = modelo;
this.vista.bEjecutar.addActionListener(this);
this.vista.bSalir.addActionListener(this); }

En este paso tener en cuenta que los Objetos del Frame deben ser públicos
Controlador: MVC

Al incluir el Método addActionListener(this) en el constructor


muyprobablemente vamos a tener un error, para solucionarlo debe incluir
Al final de la definición de la Clase incluir implements ActionListener

public class controlador implements ActionListener{


private vista vista;
private modelo modelo;
private ActionListener l;

public controlador(vista vista, modelo modelo) {


this.vista = vista;
this.modelo = modelo;
this.vista.bEjecutar.addActionListener(this);
this.vista.bSalir.addActionListener(this); }
MVC
Controlador:

public void iniciar_vista(){


vista.setLocationRelativeTo(null);
vista.vtxt1.setText( String.valueOf(modelo.getValor1()));
vista.vtxt2.setText( String.valueOf(modelo.getValor2()) );
vista.vtxt3.setText( String.valueOf(modelo.getTotal()) ); }
MVC
Controlador:

public void actionPerformed(ActionEvent e) {

if ( e.getSource().equals(this.vista.bEjecutar)) {
JOptionPane.showMessageDialog(null, " Realizar Operación");
modelo.setValor1(Integer.valueOf(vista.vtxt1.getText()));
modelo.setValor2(Integer.valueOf(vista.vtxt2.getText()));
modelo.sumar();
vista.vtxt3.setText(String.valueOf(modelo.getTotal())); }

if ( e.getSource().equals(this.vista.bSalir)) {
JOptionPane.showMessageDialog(null, " Salir de Aplicativo");
System.exit(0); }
}}
MVC
Vista:
Referentes

Heiver Cuesta Dávila.


Colombia – Bogotá, Julio 2021
Email: heivercuesta@gmail.com
Muchas Gracias

También podría gustarte