miércoles, 13 de julio de 2011

Actividad # 8

Actividad # 8

En esta entrada mostrare la implementación de unos eventos, errores y excepciones de mi proyecto.

Las excepciones las maneje vía try-catch, utilice esta forma para evitar que lo realizado dentro de ellos cause que el programa truene.

Los eventos están en el actionPerformed el cual controlaría la acción de los botones.

Mostrare las excepciones de unas clases y explicare que hace cada uno:

Este try-catch lo utilizo para un resultset el cual hace de lo ultimo que logre implementar en el proyecto, realiza una llamada a una tabla que guarda el nombre de las tablas declaradas en la base de datos y almacenarlas en un ComboBox. Si en dado caso no hubiera pruebas pues no almacenaría nada en el ComboBox y así evitaría error en el llenado del mismo.
try
{ 
 rs = BDM.getSt().executeQuery("SELECT Tablas FROM NombreTablas Order BY Tablas");
 while(rs.next())
 {
  if(!(rs.getObject(1).equals("Memoria")))
  {
   Pruebas1.addItem(rs.getObject(1));
  }
 }
}catch(SQLException e)
{
 System.out.println("No Existen Pruebas Declaradas");
}

En el siguiente try-catch manejare un comando de JDBC, cabe indicar que todo lo manejado con JDBC debe de estar dentro de un try-catch si no el programa marcara un error en la compilación del programa, es buena idea incluir en el catch imprimir la instrucción para revisar errores en la escritura  y también el probar los comandos de mysql a utilizar dentro de la terminal de MySQL para revisar escritura o mejor forma de poner los comandos.
try
{
 rs = stind.executeQuery("SELECT Memoria.Identificador FROM Memoria WHERE Memoria.Numero = "+Numero);
 if(rs.next())
 {
  int Ref = rs.getInt(1);
  Identificador = Ref;
 }

 statldel.executeUpdate("DELETE FROM "+Prueba+" WHERE Identificador="+Identificador+"");
 System.out.println("Si Se Pudo Borrar Al Atleta");
}catch(SQLException e)
{
        System.out.println("DELETE FROM "+Prueba+" WHERE Identificador="+Identificador+"");
 System.out.println(e.getMessage());
} 

Como había comentado los eventos (de mis botones) los manejo con el actionPerformed, ya que en todas mis clases la forma de usar al actionPerformed es casi idéntica solo mostrare un solo código que muestro como hacer lo anterior.

public void actionPerformed(ActionEvent e)
{
 /** *Este if manda a llamar al Metodo Alta de la misma clase*/
 if(e.getSource() == Opcion1)
 {
  Ventana.dispose();
  Alta();

 /** *Este if manda a llamar al Metodo Baja de la misma clase*/
 }else if(e.getSource() == Opcion2)
 {
  Ventana.dispose();
  Baja();

 /** *Este metodo sirve para manejar los eventos generados por los botones utilizados en la Clase*/
 }else if(e.getSource() == Enviar)
 {
  if(x == 1)
  {
   X = Pruebas1.getSelectedItem();
   Prueba = X.toString();
     Num = Numero2.getText();
     Nombre = Nombre2.getText();
     Equipo = Equipo2.getText();

   /** *@exception Para Evitar que cuando se convierta la variable y no fuera lo que utilice truene el Programa*/
   try
   {
    int Numero = Integer.parseInt(Num);
    /** *@return Estos Valores se mandan al Metodo InAtl de la clase BDManagement*/
    BDM.InAtl(Prueba, Numero, Nombre, Equipo);
   }catch (Exception Ex)
   {
    System.out.println("No se pudo Dar de Alta al Atleta en la Prueba "+Prueba+"");
   }
  }else if(x == 2)
  {
   X = Pruebas2.getSelectedItem();
   Prueba = X.toString();
     Num = Numero2.getText();

   /** *@exception Para Evitar que cuando se convierta la variable y no fuera lo que utilice truene el Programa*/
   try
   {
    int Numero = Integer.parseInt(Num);
    /** *@return Estos Valores se mandan al Metodo DelAtl de la clase BDManagement*/
    BDM.DelAtl(Prueba, Numero);
   }catch(Exception Ex)
   {
    System.out.println("Error este Número no existe en la Prueba "+Prueba+"");
   }
  }
 }
}//Fin del Metodo actionPerformed

No hay comentarios:

Publicar un comentario