Download Modelo de guía de aprendizaje INSTITUTO TECNOLÓGICO SAN
Document related concepts
no text concepts found
Transcript
Modelo de guía de aprendizaje INSTITUTO TECNOLÓGICO SAN AGUSTÍN Montería Programa de formación: Informática y Redes Guía de contenidos Fecha: 27/08/2014 Versión: 1 Guía número 1 de Análisis y Programación 2 Ing. Francisco Miguel Berrocal Machado 1 Identificación de la Guía: Competencia Resultado de aprendizaje Duración Crear programas en el lenguaje Java que conecten con bases de datos haciendo uso de la metodología de Programación Orientada a Objetos. Crear aplicaciones que dan solución a problemas reales del entorno socioeconómico, que conecten con bases de datos, utilizando el lenguaje de programación Java y la metodología de la Programación Orientada a Objetos 1.5 horas 2 Presentación: En el transcurso de las clases anteriores se aprendió a crear una base de datos en MYSQL utilizando para ello la aplicación PHPMYADMIN. Se aprendió como crear un proyecto Java en el Editor NETBEANS y cómo organizarlo utilizando la estructura MVC, Modelo Vista Controlador de la Programación Orientada a Objetos. Se creó una clase llamada Conexión.java la cual permite establecer conexiones con la base de datos. Ahora continuamos con los temas contenidos en la presente guía de aprendizaje con el objetivo de probar la conexión con la base de datos y poder Listar los datos y Guardar nuevos datos en ésta. Anímate y pon tu mayor esfuerzo en la realización de la presente actividad, la cual te permitirá fortalecer tu aprendizaje y a ayudar a tus compañeros en el fortalecimiento del suyo. 3 Conocimientos previos: Base de datos, creación de Clase java, creación de proyectos, creación de métodos, manejo de IGU, Condicionales IF-ELSE, ciclos FOR y WHILE, variables, tipos de dato Java 4. Desarrollo de los contenidos ARCHIVO DEL CONRTROLADOR QUE SE ENCARGARA DE ESTABLECER LA CONEXIÓN: El siguiente código corresponde a la clase Conexión.java el cual se encarga de establecer conexión con nuestra BD, gracias a él, podremos guardar y administrar nuestros datos en las tablas de la BD. (Puedes copiarlo y pegarlo en tu proyecto y modificar las líneas de código que correspondan). package Controlador; import java.sql.Connection; import java.sql.DriverManager; import javax.swing.JOptionPane; public class Conexion { Modelo de guía de aprendizaje INSTITUTO TECNOLÓGICO SAN AGUSTÍN Montería Programa de formación: Informática y Redes Guía de contenidos Fecha: 27/08/2014 Versión: 1 private Connection con; public Conexion() { try { Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/tienda"; con = DriverManager.getConnection(url, "root", "clave de root"); } catch (Exception ex) { JOptionPane.showMessageDialog(null, "Error: " + ex.getMessage()); } } public Connection getCon() { return con; } } MODELO DE TABLA Antes de comenzar con el trabajo en la base de datos, debes modelar las tablas, el siguiente archivo es un ejemplo del modelo de una tabla llamada Asignaturas, y tiene los campos Codigoasignatura, NombreAsignatura, codigoCurso, Documento. Debes incluir los métodos constructores y GUETERS AND SETTERS. Puedes hacerlo siguiendo la ruta: Clic derechoInsert CodeConstructor o gueters and setters. package Modelo; public class Asignaturas { private String Codigoasignatura; private String NombreAsignatura; private String codigoCurso; private String Documento; public String getCodigoAsignatura() { return Codigoasignatura; } public void setCodigoAsignatura(String CodigoAsignatura) { this.Codigoasignatura = CodigoAsignatura; } public String getNombreAsignatura() { return NombreAsignatura; Modelo de guía de aprendizaje INSTITUTO TECNOLÓGICO SAN AGUSTÍN Montería Programa de formación: Informática y Redes Guía de contenidos Fecha: 27/08/2014 Versión: 1 } public void setNombreAsignatura(String Nombreasignatura) { this.NombreAsignatura = Nombreasignatura; } public String getCodigoCurso() { return codigoCurso; } public void setCodigoCurso(String CodigoCurso) { this.codigoCurso = CodigoCurso; } public String getDocumento() { return Documento; } public void setDocumento(String Documento) { this.Documento = Documento; } } ARCHIVO DEL CONRTROLADOR QUE SE ENCARGARA DE GESTIONAR LA TABLA (guardar, modificar, eliminar, etc): Para cada tabla, debe existir un gestor de tabla, el cual se encarga de realizar toda la actividad correspondiente al guardado, listado, eliminación, etc. Todas estas tareas realizadas sobre la tabla correspondiente. A continuación te presento un ejemplo con los dos primeros métodos a ejecutar sobre la tabla import java.sql.*; public class ClienteDAO { //Debes declara esto al comienzo del archivo PreparedStatement stmt = null; Modelo de guía de aprendizaje INSTITUTO TECNOLÓGICO SAN AGUSTÍN Montería Programa de formación: Informática y Redes Guía de contenidos Fecha: 27/08/2014 Versión: 1 METODO LISTAR El siguiente método es para listar una tabla de la base de datos y mostrar en un objeto gráfico JTable. public DefaultTableModel listar() { DefaultTableModel modelo = new DefaultTableModel(); String titulos[] = {"Cédula","Nombre","Teléfono","Dirección"}; modelo = new DefaultTableModel(null,titulos); ResultSet rs = null; Connection con = new Conexion().getCon(); try { rs = con.createStatement().executeQuery("select * from clientes"); while (rs.next()) { Objectfila[] = new Object[4]; for (int i = 0; i < 4; i++) { fila[i] = rs.getObject(i + 1); } modelo.addRow(fila); } con.close(); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "ERROR:" + ex.toString()); } return modelo; } Modelo de guía de aprendizaje INSTITUTO TECNOLÓGICO SAN AGUSTÍN Montería Programa de formación: Informática y Redes Guía de contenidos Fecha: 27/08/2014 Versión: 1 METODO GUARDAR El siguiente método, también debe incluirse en el gestor de tabla. Se encarga de guardar en la tabal de nuestra base de datos. El siguiente método guardar pertenece a el archivo AsignaturasDAO.java. public boolean Guardar(Asignaturas asi) { String result = ""; Connection con = new Conexion().getCon(); try { stmt = con.prepareStatement("INSERT INTO " + "asignaturas(CodigoAsignatura,NombreAsignatura,CodigoCurso,Documento) " + "VALUES (?,?,?,?)"); stmt.setString(1, asi.getCodigoAsignatura()); stmt.setString(2, asi.getNombreAsignatura()); stmt.setString(3, asi.getCodigoCurso()); stmt.setString(4, asi.getDocumento()); stmt.executeUpdate(); result = true; } catch (SQLException ex) { result = ex.toString(); } return false; } Para listar en el formulario que contiene una tabla se deben incluir las siguientes líneas de código. //En el formulario se carga la tabla al momento de cargarlo… public Clientes() { initComponents(); this.setTitle("Administración de Clientes"); tablaCli.setModel( new AdministraClientes().listar() ); this.setLocationRelativeTo(null); } Muy bien, estos son los primeros métodos de trabajo con bases de datos que vamos a utilizar espero que les sirva. No olviden profundizar y consultar en otras fuentes de información. Exitos. Modelo de guía de aprendizaje INSTITUTO TECNOLÓGICO SAN AGUSTÍN Montería Programa de formación: Informática y Redes Guía de contenidos Fecha: 27/08/2014 Versión: 1 CODIGOS IGU PARA TRABAJAR CON LA TABLA FACTURA Botón Guardar: El siguiente método se codifica en el botón guardar de la interfaz gráfica de usuario. if( t1.getText().isEmpty() || t2.getText().isEmpty() ){ JOptionPane.showMessageDialog(null, "Faltan ingresar Datos"); }else{ f = new Factura(); f.setFecha(fecha.getDate()); f.setValor(Double.parseDouble(t1.getText()) ); f.setCed_cliente(Integer.parseInt(t2.getText())); if( gf.guardar(f) ){ this.tab1.setModel(gf.listar() ); JOptionPane.showMessageDialog(null, "Datos almacenados correctamente"); f = null; t1.setText(null); t2.setText(null); }