tarea de la sesión 8 - joel omarbp

12
PROGRAMACION VISUAL II TAREA DE LA SESION 8 1. Usando la base de datos de universidad y comandos SQL diseña el mantenimiento de datos docente. Hacer uso de vistas - En la Clase Acceso se digitará el siguiente código: package tarea8; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.sql.*; import javax.swing.*; /** * * @author Omarzinho */ public class Acceso { static Connection conn=null; static Statement st=null; static ResultSet rs=null; static String bd="universidad"; static String login="root"; static String password=""; static String url="jdbc:mysql://localhost/"+bd; public static Connection Enlace(Connection conn) throws SQLException { try { Class.forName("com.mysql.jdbc.Driver"); conn=DriverManager.getConnection(url,login,password); } catch(ClassNotFoundException e) { JOptionPane.showMessageDialog(null, e); } Importamos las librerías Java sql a utilizar Creamos la clase Connection En este código llevamos el usuario y contraseña + el url de la base de datos MySQL

Upload: j-omar-burgos-palacios

Post on 13-Apr-2017

170 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Tarea de la sesión 8  - Joel OmarBP

PROGRAMACION VISUAL II TAREA DE LA SESION 8

1. Usando la base de datos de universidad y comandos SQL diseña el mantenimiento de datos docente. Hacer uso de vistas

- En la Clase Acceso se digitará el siguiente código: package tarea8; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.sql.*; import javax.swing.*; /** * * @author Omarzinho */ public class Acceso { static Connection conn=null; static Statement st=null; static ResultSet rs=null; static String bd="universidad"; static String login="root"; static String password=""; static String url="jdbc:mysql://localhost/"+bd; public static Connection Enlace(Connection conn) throws SQLException { try { Class.forName("com.mysql.jdbc.Driver"); conn=DriverManager.getConnection(url,login,password); } catch(ClassNotFoundException e) { JOptionPane.showMessageDialog(null, e); }

Importamos las librerías Java sql a

utilizar

Creamos la clase Connection

En este código llevamos el

usuario y contraseña + el url de la

base de datos MySQL

Page 2: Tarea de la sesión 8  - Joel OmarBP

return conn; } public static Statement sta(Statement st) throws SQLException { conn=Enlace(conn); st=conn.createStatement(); return st; } public static ResultSet obtenerCodDocente(ResultSet rs) throws SQLException { st=sta(st); rs=st.executeQuery("Select * from docente"); return rs; } } - EN EL FORMULARIO SE DIGITARÁ EL SIGUIENTE CÓDIGO: package tarea8; import java.sql.*; import javax.swing.*; import javax.swing.table.*; import tarea8.Acceso; /** * * @author Omarzinho */ public class FrmMantDocente extends javax.swing.JFrame { static Connection conn=null; static Statement st=null; static ResultSet rs=null; DefaultTableModel dtm=new DefaultTableModel(); public FrmMantDocente() { initComponents(); activabotones(true, false, false, false); String titulos[]={"Código", "Nombre del Docente"}; dtm.setColumnIdentifiers(titulos); TablaDocente.setModel(dtm); this.setResizable(false); setSize(550,250); setLocation(60,50); } public void activabotones(boolean n, boolean e, boolean m, boolean g) { btnNuevo.setEnabled(n); btnEliminar.setEnabled(e);

Creamos la Conexión y el Enlace

que nos ayudará en el llamado a

la base de datos Mysql

Importamos las librerías Java sql a

utilizar

Conectaremos la Conexión hecha

en la Clase Acceso

En este código es para darle el

nombre de los que irá a pedir en

la tabla

Creamos los métodos

Activabotones

Page 3: Tarea de la sesión 8  - Joel OmarBP

btnModificar.setEnabled(m); btnGrabar.setEnabled(g); } public void limpiarObjetos() { txtCodDoc.setText(""); txtNombre.setText(""); } @SuppressWarnings("unchecked") private void btnBuscarActionPerformed(java.awt.event.ActionEvent evt) { String b; if(btnNuevo.isEnabled()) { try { conn=Acceso.Enlace(conn); rs=Acceso.obtenerCodDocente(rs); b=txtCodDoc.getText(); boolean encuentra=false; while(rs.next()) { if(b.equals(rs.getString(1))) { txtNombre.setText((String)rs.getString(2)); this.activabotones(true, true, true, false); encuentra=true; break; } } if(encuentra=false) { txtCodDoc.setText("NO EXISTE"); txtCodDoc.requestFocus(); } } catch(SQLException e) { JOptionPane.showMessageDialog(null, "Error BD"+e.getMessage()); } } } private void btnVerActionPerformed(java.awt.event.ActionEvent evt) { try { setSize(550,480);

CODIFICAREMOS LOS BOTONES

SEGÚN LA FUNCION QUE REALICE

Page 4: Tarea de la sesión 8  - Joel OmarBP

int f,i; conn=Acceso.Enlace(conn); rs=Acceso.obtenerCodDocente(rs); String datos[]=new String[2]; f=dtm.getRowCount(); if(f>0) for(i=0;i<f;i++) dtm.removeRow(0); while(rs.next()) { datos[0]=(String)rs.getString(1); datos[1]=(String)rs.getString(2); dtm.addRow(datos); } } catch(SQLException e) { JOptionPane.showMessageDialog(null, "Error en BD: "+e.toString()); } } private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt) { hide(); } private void btnNuevoActionPerformed(java.awt.event.ActionEvent evt) { limpiarObjetos(); txtCodDoc.setEnabled(true); txtCodDoc.requestFocus(); activabotones(false,false,false,true); } private void btnEliminarActionPerformed(java.awt.event.ActionEvent evt) { int resp; resp=JOptionPane.showConfirmDialog(null, "¿Desea Eliminar el Registro?","Pregunta",0); if(resp==0) { try { conn=Acceso.Enlace(conn); st=Acceso.sta(st); rs=Acceso.obtenerCodDocente(rs); String cod,comando; cod=txtCodDoc.getText(); comando="DELETE FROM docente where cod_doc='"+cod+"'"; st.execute(comando); conn.close(); activabotones(true, false, false, false); limpiarObjetos();

Page 5: Tarea de la sesión 8  - Joel OmarBP

} catch (SQLException e) { JOptionPane.showMessageDialog(null, "Error "+e.toString()); } } } private void btnModificarActionPerformed(java.awt.event.ActionEvent evt) { int resp; resp=JOptionPane.showConfirmDialog(null,"¿Desea Modificar el registro?","Pregunta",0); if (resp==0) { try { conn=Acceso.Enlace(conn); st=Acceso.sta(st); rs=Acceso.obtenerCodDocente(rs); String cod, nom; String comando; cod=txtCodDoc.getText(); nom=txtNombre.getText(); comando="UPDATE docente SET nombres='"+nom+"' Where iddocente='"+cod+"'"; st.executeUpdate(comando); conn.close(); activabotones(true,false,false,false); limpiarObjetos(); } catch(SQLException e) { JOptionPane.showMessageDialog(null, "Error"+e.toString()); } } } private void btnGrabarActionPerformed(java.awt.event.ActionEvent evt) { int resp; resp=JOptionPane.showConfirmDialog(null, "¿Desea Grabar el registro?","pregunta",0 ); if(resp==0) { try { conn=Acceso.Enlace(conn); st=Acceso.sta(st); rs=Acceso.obtenerCodDocente(rs); String cod, nom, comando; cod=txtCodDoc.getText(); nom=txtNombre.getText(); comando="INSERT INTO docente values('"+cod+"','"+nom+"')";

Page 6: Tarea de la sesión 8  - Joel OmarBP

st.executeUpdate(comando); conn.close(); activabotones(true,true,true,false); limpiarObjetos(); txtCodDoc.setEditable(true); } catch(SQLException e) { JOptionPane.showMessageDialog(null, "Error! "+e.toString()); } } } private void btnCancelarActionPerformed(java.awt.event.ActionEvent evt) { int resp; resp=JOptionPane.showConfirmDialog(null, "¿Desea cancelar el progreso?","Pregunta",0); if(resp==0) { limpiarObjetos(); txtCodDoc.setEnabled(false); activabotones(true,true,false,false); } } /** * @param args the command line arguments */ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new FrmMantDocente().setVisible(true); } }); } }

Page 7: Tarea de la sesión 8  - Joel OmarBP

2. Usando la base de datos de universidad y comandos SQL diseña el mantenimiento de datos de curso. Hacer uso de vistas

- En la clase Acceso se digitara el siguiente código

package tarea82; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.sql.*; import javax.swing.*; public class Acceso { static Connection conn=null; static Statement st=null; static ResultSet rs=null; static String bd="universidad"; static String login="root"; static String password=""; static String url="jdbc:mysql://localhost/"+bd; public static Connection Enlace(Connection conn) throws SQLException { try { Class.forName("com.mysql.jdbc.Driver"); conn=DriverManager.getConnection(url,login,password); } catch(ClassNotFoundException e) { JOptionPane.showMessageDialog(null, e); } return conn; } public static Statement sta(Statement st) throws SQLException { conn=Enlace(conn); st=conn.createStatement(); return st; } public static ResultSet obtenerCodCur(ResultSet rs, String nom) throws SQLException { st=sta(st);

Importamos las librerías Java sql a

utilizar

Creamos la clase Connection

Page 8: Tarea de la sesión 8  - Joel OmarBP

String sql; sql="select idcurso from curso where nombre='"+nom+"'"; rs=st.executeQuery(sql); return rs; } public static ResultSet obtenerCursos(ResultSet rs) throws SQLException { st=sta(st); String sql; sql="select nombre from curso"; rs=st.executeQuery(sql); return rs; } public static ResultSet obtenerCodCurso(ResultSet rs) throws SQLException { st=sta(st); rs=st.executeQuery("Select * from curso"); return rs; } }

- EN EL FORMULARIO IRÁ EL SIGUIENTE CÓDIGO DIGITADO :

package tarea82; import java.sql.*; import javax.swing.*; import javax.swing.table.*; import tarea82.Acceso; /** * * @author Omarzinho */ public class FrmManCurso extends javax.swing.JFrame { static Connection conn=null; static Statement st=null; static ResultSet rs=null; DefaultTableModel dtm=new DefaultTableModel(); /** * Creates new form FrmManCurso */ public FrmManCurso() { initComponents(); activabotones(true, false, false, false); String titulos[]={"Código", "Nombre de Curso"}; dtm.setColumnIdentifiers(titulos); TablaDocente.setModel(dtm); this.setResizable(false); setSize(550,480);

Page 9: Tarea de la sesión 8  - Joel OmarBP

setLocation(60,50); } public void activabotones(boolean n, boolean e, boolean m, boolean g) { btnNuevo.setEnabled(n); btnEliminar.setEnabled(e); btnModificar.setEnabled(m); btnGrabar.setEnabled(g); } public void limpiarObjetos() { txtCodCur.setText(""); txtNombre.setText(""); } @SuppressWarnings("unchecked") private void btnBuscarActionPerformed(java.awt.event.ActionEvent evt) { String b; if(btnNuevo.isEnabled()) { try { conn=Acceso.Enlace(conn); rs=Acceso.obtenerCodCurso(rs); b=txtCodCur.getText(); boolean encuentra=false; while(rs.next()) { if(b.equals(rs.getString(1))) { txtNombre.setText((String)rs.getString(2)); this.activabotones(true, true, true, false); encuentra=true; break; } } if(encuentra=false) { txtCodCur.setText("NO EXISTE"); txtCodCur.requestFocus(); } } catch(SQLException e) { JOptionPane.showMessageDialog(null, "Error BD"+e.getMessage()); } }

Page 10: Tarea de la sesión 8  - Joel OmarBP

} private void btnVerActionPerformed(java.awt.event.ActionEvent evt) { try { // setSize(550,480); int f,i; conn=Acceso.Enlace(conn); rs=Acceso.obtenerCodCurso(rs); String datos[]=new String[2]; f=dtm.getRowCount(); if(f>0) for(i=0;i<f;i++) dtm.removeRow(0); while(rs.next()) { datos[0]=(String)rs.getString(1); datos[1]=(String)rs.getString(2); dtm.addRow(datos); } } catch(SQLException e) { JOptionPane.showMessageDialog(null, "Error en BD: "+e.toString()); } } private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt) { hide(); } private void btnNuevoActionPerformed(java.awt.event.ActionEvent evt) { limpiarObjetos(); txtCodCur.setEnabled(true); txtCodCur.requestFocus(); activabotones(false,false,false,true); } private void btnEliminarActionPerformed(java.awt.event.ActionEvent evt) { int resp; resp=JOptionPane.showConfirmDialog(null, "¿Desea Eliminar el Registro?","Pregunta",0); if(resp==0) { try { conn=Acceso.Enlace(conn); st=Acceso.sta(st); rs=Acceso.obtenerCodCurso(rs); String cod,comando;

Page 11: Tarea de la sesión 8  - Joel OmarBP

cod=txtCodCur.getText(); comando="DELETE FROM curso where idcurso='"+cod+"'"; st.execute(comando); conn.close(); activabotones(true, false, false, false); limpiarObjetos(); } catch (SQLException e) { JOptionPane.showMessageDialog(null, "Error "+e.toString()); } } } private void btnModificarActionPerformed(java.awt.event.ActionEvent evt) { int resp; resp=JOptionPane.showConfirmDialog(null,"¿Desea Modificar el registro?","Pregunta",0); if (resp==0) { try { conn=Acceso.Enlace(conn); st=Acceso.sta(st); rs=Acceso.obtenerCodCurso(rs); String cod, nom; String comando; cod=txtCodCur.getText(); nom=txtNombre.getText(); comando="UPDATE curso SET nombre='"+nom+"' Where idcurso='"+cod+"'"; st.executeUpdate(comando); conn.close(); activabotones(true,false,false,false); limpiarObjetos(); } catch(SQLException e) { JOptionPane.showMessageDialog(null, "Error"+e.toString()); } } } private void btnGrabarActionPerformed(java.awt.event.ActionEvent evt) { int resp; resp=JOptionPane.showConfirmDialog(null, "¿Desea Grabar el registro?","pregunta",0 ); if(resp==0) { try {

Page 12: Tarea de la sesión 8  - Joel OmarBP

conn=Acceso.Enlace(conn); st=Acceso.sta(st); rs=Acceso.obtenerCodCurso(rs); String cod, nom, comando; cod=txtCodCur.getText(); nom=txtNombre.getText(); comando="INSERT INTO curso values('"+cod+"','"+nom+"')"; st.executeUpdate(comando); conn.close(); activabotones(true,true,true,false); limpiarObjetos(); txtCodCur.setEditable(true); } catch(SQLException e) { JOptionPane.showMessageDialog(null, "Error! "+e.toString()); } } } private void btnCancelarActionPerformed(java.awt.event.ActionEvent evt) { int resp; resp=JOptionPane.showConfirmDialog(null, "¿Desea cancelar el progreso?","Pregunta",0); if(resp==0) { limpiarObjetos(); txtCodCur.setEnabled(false); activabotones(true,true,false,false); } } public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new FrmManCurso().setVisible(true); } }); } }