
import java.sql.*;


/** Clase Conexion
  * Tiene un metodo estatico que da una conexion con la BD 
  * He utilizado el patron SINGLETON:
  *  Si ya existe un objeto lo devuelvo y si no creo uno
  */

class Conexion{
   private static Connection conDB = null;
   private static String DBUrl;


   public static void setURL(String dburl){
      DBUrl = dburl;
   }

   /** Devuelve un objeto del tipo Connection con la base de  */
   public static Connection getConexion(){
	  if (conDB == null)
	  {
		 try{
			Class.forName("org.gjt.mm.mysql.Driver");
		 }catch(Exception e){
			System.out.println("No se ha encontrado el driver JDBC");
		 }
      
		 try{
			conDB = DriverManager.getConnection(DBUrl);
		 }catch(SQLException sqle){
			System.out.println("SQLException: " + sqle.getMessage());
			System.out.println("SQLState: " + sqle.getSQLState());
			System.out.println("VendorError: " + sqle.getErrorCode());
		 }
	  } 
	  return conDB;        
   }
   
   /** Desconecta de la base de datos */
   
   public static void desconecta() {
      if (conDB != null) {
         try {
            conDB.close();
         } catch (SQLException sqle) {
            System.out.println("SQLException: " + sqle.getMessage());
            System.out.println("SQLState: " + sqle.getSQLState());
            System.out.println("VendorError: " + sqle.getErrorCode());

         }
      }
   }
}      

