Modelo Vista Controlador (MVC) es un patrón de arquitectura de software que separa los datos de una aplicación, la interfaz de usuario, y la lógica de negocio en tres componentes distintos. (Según Santa Wikpedia)
Un poco de teoria.
Flujo que sigue la implementación de este modelo.
🙂 Hasta ahi todo bien, es la teoria resumida (espero que bien) de lo que es un Patron MVC (Model, View and Controller) pero nada es la teoria si no la llevamos a la practica, sin embargo debo decir que el patrón MVC es más común en aplicaciones web que en aplicaciones de escritorio, buscando información en la internet son pocas y la gran mayoria información en ingles (sin dibujos 🙁 ) sobre aplicaciones Swing-Java, pero eso no quiere decir que no se pueda, si se puede, y es más Java tiene sus propias herramientas para implementar este patrón (Observer y Observable) pero para este proyecto decidi basarme más en un modelo PHP-MVC que tengo, en el cual la migración no es muy complicada ya que ambos trabajan bajo POO.
Herrammientas utilizadas. Se utilizaron las siguientes tecnologias:
– commons-beanutils-1.8.2.jar
– commons-collections-3.2.1.jar
– commons-digester-1.7.jar
– commons-javaflow-20060411.jar
– commons-logging-1.1.jar
– groovy-all-1.5.5.jar
– iText-2.1.7.jar
– jasperreports-3.7.2.jar
mysql-connector-java-5.1.6-bin.jar
– j2Button.jar: Para el manejo de botones multilinea
– JCDesktopPane.jar: Para trabajar con formularios MDI y con imagen de fondo.
– jcMousePanel-1.6.9.jar: Para agregar imagenes y degradado a los JPanel.
– jcTablaAsignatura.jar: Este componente simula una pequeña tabla para trabajar con la info de la base de datos.
Todas estas librerias estan dentro el archivo de descarga al final de la página 🙂
¿Que necesitas saber?
¿Qué espero de ti?
EL PROYECTO
El proyecto elegido para la implementación del Patrón MVC-Java es el de «Programación de Asignaturas» de una Universidad Imaginaria con la impresión de su respectiva matriculación.
Al iniciar el sistema debes autentificarte dando tu CU (Carnet Universitario) y tu CI (Carnet de identidad), una vez logueado en el sistema debes programarte, si ya estas programado, el sistema no te deja programarte dos veces, solo puedes ver tu matriculación y realizar la impresión del mismo, caso contrario el sistema te presenta una lista de 8 asignaturas con sus respectivos grupos, los cuales puedes seleccionar y programar. Pero mejor ve el siguiente video asi te queda más claro todo.
Pues nada eso es todo, el proyecto esta tan comentado que te aburriras leyendome 🙂
DESCARGAR (Actualizado 7/09/2015)
Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.
Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye
Enjoy! :)
En este tutorial crearemos un lector de Feeds en Java/netbeans, pero antes debemosa saber que es un Feed, según Santa Wi...
En un post anterior, desarrollamos un swing para simular un efecto FLIP y recibí algunos mensajes pidiéndome un ejemplo...
En un post anterior vimos como utilizar GSON para serializar un objeto java en JSON, en esta oportunidad se vera el proc...
Google tiene entre su formulario de autenticación de usuario para sus diferentes servicios (gmail, blogger, youtube, g+)...
MVC es un patrón de arquitectura de software que separa una aplicación en tres componentes lógicos principales. Estos s...
Las aplicaciones para celulares inteligentes con sistema operativo Android, se distribuyen en archivos *.APK, si como pr...
Los comentarios estan cerrados
Si trabajas con redes sociales (RRSS) a continuación te muestro tres herramintas gratuitas que te ayudaran a la hora de...
Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...
En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...
Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...
Man Agradecerte por tus aportes que personalmente me esta ayudando y mucho gracias nuevamente
¡Muchas gracias por compartir tus proyectos!. La verdad que me están ayudando mucho y estoy aprendiendo.
Ya fueran muchos como tu compartiendo y explicando las cosas.
Saludos.
Excelente, gracias por compartir tus conocimientos, estoy iniciandome en Java y de seguro me servirá mucho estar pendiente de lo que escribes.
Gracias.
Man eres excelente….. me gustaria contactarme con tigo. gracias
me encuentras en facebook 🙂
Men no tengo ni idea q es jasperreports, y ps no eh podido correr el programa ya q me salen errores tanto en la vista como en el modelo por ejemplo: net.sf.jasperreports.engine.JRException;
me dice q no existe, porfavor ayudame ahi lo mas pronto posible me interesa mucho saber respondeme a santos_jrng@hotmail.com
pues ahi tu error, no puedes hacer funcionar si no tienes al menos los conocimientos básicos, este ejemplo es para usuarios intermedios quienes ya tienen claro muchos conceptos sobre programación java y sus librerias, te sugiero que te des una vuelta por los tutoriales mas sencillos, para que te familiarices con java 🙂
Disculpa la pregunta, qué tengo que hacer para descargar el ejemplo?. Siguiendo los pasos llego hasta que aparece el botón de descargar el archivo, (después de esperar el tiempo que me pide la aplicación), y cuando presiono el botón no sucede nada.
Alguien me puede auxiliar con ésto, porque me interesa mucho el ejemplo, la explicación del proceso me parece excelente.
seguramente estas utilizando IE, utiliza otro navegador como firefox o crome 🙂
Muchas gracias estoy trabajando en un proyecto de la U. Seguro me servira mucho
Mil gracias
hola me da mucho gusto que por medio de esta pag. pueda compartir tus conocimientos y así los que queramos aprender nos ayudes. he estado visitando tu pag. continuamente y me ha ayudando bastante. Espero y sigas así. te mando saludos desde México,Veracruz.
ok gracias por la buena vibra, saludos desde Bolivia 🙂
Exelente muchas gracias!!!!!
Bueno Tutorial que has hecho, habre si podrias hacer un mvc web. Te agradeceria bastante.
Saludos desde Peru
gracias gracias gracias gracias
muy bueno los tips he me estan ayudando muxho
buenas noches, de pana que tengo tiempo sirviendome de tus proyectos, todos han sido útiles para mis proyectos también, me has dado muchas ideas…. Felicitaciones..permanece aquí siempre
me salen varios errores en el Controlador, y trato de hacer el login pero el GridBad no me deja 🙁
¿cual error?
run:
OK base de datos db_programacion listo
Exception in thread «main» java.lang.RuntimeException: Uncompilable source code – package j2Button does not exist
at vista.principal.(principal.java:125)
at jcprogramacion.Main.main(Main.java:19)
Java Result: 1
BUILD SUCCESSFUL
mira lo que me dice amigo
el error te dice todo «J2Button no existe» asegúrate de añadir las librerías necesarias a netbeans 🙂
Sinceramente se te agradece el esfuerzo y el querer compartir tu conocimiento, en lo personal me ha servido de mucho los proyectos de esta Web ya que estoy cursando la carrera de Ing. en Sistemas Comp. Espero sigas asi y GRACIAS de nuevo.
UNA PREGUNTOTA CURIOSA: ¿Haz trabajado con algun Lector de Huella Digital? X lenguaje de programacion. Es para un proyecto.
Ah me gusta tu manera de programar!!!
SUERTE Y ESPERO ME PUEDAS CONTESTAR…
gracias, respecto a tu pregunta, no, no e trabajado con lectores de huella digital
Excelente te felicito excelente web site.
abes de algun ejemplo de sincronizacion de dos o mas Jcombobox ejemplo: dos JCombobox conectados a una base de datos con dos tablas vinculadas, cuando seleccionas un item en el combo 1 se filtran los datos relacionados en el combo 2. llevo semanas buscado algo de esto en la web y nada.
pues no tengo ningún ejemplo ahora, pero si se puede hacer 🙂
idea para un nuevo post, gracias
int limite = (datos.length>=10)?10 : datos.length;
for(int i=0; i<this.frmprogramacion.TablaAsignaturas.getNumFilas();i++)
Me sale el error segun entiendo que TablaAsignaturas no esta declarado
saludos
:/ Si mal no recuerdo «tablaasignaturas» es un componente, debes añadirlo al proyecto para utilizarlo 🙂
Mouse un saludo desde México, excelente proyecto funciono sin ningun problema, aun no reviso todo el codigo pero lo poco que estube revisando esta perfecto ya que para implementar MVC con swing hay poca información y no es muy clara, pero tú codigo es bastante entendible, Saludos.
muy buena aplicacion men!!
felicidades
se ve a la perfeccion el patron mvc
🙂 gracias
muchisismas gracias hermano de verdad se le agradece mucho por compartir tanto con nosotros… que Dios le de mas conocimiento y sabiduria para q la puedas compartir mas y mas como lo vienes haciendo
Alguien me podria ayudar con este error ya llevo por lo menos 15 diaz y no he podido resolverlo he consultado en la web y hago los pasos pero no me soluciona… porfavor necesito ayuda:: el Agente de sQL SERVER SQL EXPRESS esta detenido y no me inicia por mas que le digito comandos…. necesito pasos sencillos y al grano para solucionar con esto que ya no puedo….y cuando le doys iniciar me sale error en la solicitud o el servicio no respondio a tiempo……. tengo SQL server Express 2012.. y cuando lo instale le puse co autenticacion de windows
desinstala el SQL, limpia los registros de windows, vuelve a instalar SQL Server, si no funciona cambie de Sistema Operativo 😉
Hola. Podrías subir algún ejemplo de software JSP echo con netbeans ??
:/ haremos el intento antes de fin de año 🙂
excelente tutoriales muy pero muy buenos sigue asi jcMouse te agradecemo0s inmensamente
muchas gracias JC, por fin aprendi a usar MVC en Java.
uta tio ta weno el proyect si vale la pena estudiar u codigo fuentesige asi i suerte es una gra ayuda para principiantes cmo yo
ola mouse, muy xvre el tutorial (y) tenia una consulta, tu indicas que mvc no es usado mucho para las aplicaciones de escritorio, entonces ¿que patrón de arquitectura de software se usa con normalidad en java?, ah y otra consulta para hacer una aplicacion para una computadora lentita pentium IV en el que tarda demasiado iniciar la JVM, seria mejor hacer la aplicacion en VB, o se puede mejorar el inicio de la JVM ?
MVC se usa mas para aplicaciones web porque existen frameworks que ayudan bastante, en aplicaiones de escritorio hay de todo pero lo más comun es la de «tres capas» que es similar al MVC.
:/ yo tenia una PIV con 256de RAM y java me funcionaba de maravilla, la JVM se pone lenta dependiendo de la aplicación, eso se debe al uso de muchas librerias , muchas imagenes que consumen mucho ram, etc
java se carga en el inicio y no se puede acelerar su carga, eso esta en manos del hardware del equipo, pero puedes intentar acelerar la carga quitando programas que no uses y que se cargan igual al inicio, limpiando el registro del sistema, tal vez algun troyano te lenta la PC, etc
mira tengo que hacer un pequeño programa en java como un login,donde hay dos usuarios, uno de los usuarios es el administrador y el otro es un guarda de seguridad, el administrador puede modificar, eliminar, guardar y consultar la información del formularios
pero el usuario 2 solo puede consultar la informacion del formulario y no puede hacer ningun cambio solo consultar la informacion del formulario
¿como lo hago ? y donde puedo consular ejemplos para guiarme o información referente al tema que te comento Gracias
quiero jctablasignaturas
Sin formato jar
Ayuda Repetí el programa, pero en Inglés
Pero yo no sé cómo cambiar el archivo jar
Por favor ayuda
buen aporteee…. no lo puedo descargarrr… plis sera que me lo puedes mandar a mi correo porfa… juan_carlos1345@hotmail.com porfaaaaaa….. soy fanss de netbeansss
muy bueno 🙂 y la musica de fondo del video es de death note no , jajaja like.
Gracias amigo, personas como usted es lo que necesita el mundo
felicidades excelente proyecto…
muy buena pagina joven deberiamos abrir un grupo para poder resolver y aportar dudas en diversos sistemas saludos y un abrazo
GRACIAS
amigo nuevamente gracias por el aporte lo estaba buscando, lo descargo y cualquier cosa te comento para que me asesores gracias.
Grax
voy a revisar a ver que aprendo sobre mvc
Excelente, lo voy a revisar ya que tengo que impartir este patron de diseño Gracias
me pueden ayudar con este proyecto embiarmelo al correo ya que no pude gracias
Gracias, por el ejemplo… me sirvo con mi proyecto!!
Muchas gracias por el ejemplo, me ayudo mucho 🙂 sigue adelante
buenas amigo, no e podido descargar el proyecto de ninguno de los servidores.! no se si hay algo que no estoy tomando en cuenta a la hora de descargarlo o es q el archivo no se encuentra disponible. espero me puedas ayudar saludos
Hola viejo 🙂 revisado los link y estan vivos 🙂 lo subiré para mega también
Gracias amigo revisare el codigo, de ante mano mil gracias