Páginas

6/6/14

JDBC Java y PL-SQL

JDBC Java con Oracle

Oracle JDBC



Java Database Connectivity es la API que permite que nosotros desde Java podamos hacer operaciones en la base de datos. Imagino que si tu estas leyendo este post en este momento ya sabes de qué se trata JDBC, sino puedes googlear un poco, mediante esta API nos podemos conectar y hacer operaciones a cualquier base de datos, en esta entrada les voy a enseñar cómo hacer la conexión Java a PL-SQL. Hay varias maneras de hacer la conexión con la base de datos, en este post explicare como hacerlo para aplicaciones de escritorio. Primero tenemos que descargarnos el driver de Oracle para lograr la conexión.
Driver Oracle
Driver Oracle
Después de descargar el ojdbc14.jar podemos comenzar a crear el proyecto, puede ser con cualquier IDE, yo utilizo el JBoss Developer Studio. Creamos un proyecto nuevo
Create java project
Create java project
De una vez importamos el driver que ya tenemos, para eso hacemos clic derecho arriba del proyecto y nos dirigimos a Properties>Java Build Path>Add External JARs... Y agregamos el driver de Oracle y presionamos "Ok".
Add Driver
Add Driver
Después de agregar el driver si vemos el proyecto que creamos nos damos cuenta de que aparece en la raíz el driver con todos sus paquetes si los desplegamos.
ojdbc14.jar
ojdbc14.jar
Ahora vamos a crear un paquete nuevo, en el cual vamos a crear la clase principal, presionamos clic derecho sobre el proyecto que creamos New>Package
New Package
New Package
Creamos la clase control dentro del paquete control, clic derecho sobre el paquete control New>Class y creamos la clase control que se encargara de llamar el método que hará la conexión con la base de datos de Oracle.
Class control
Class control
Creamos otro paquete de nombre jdbc y dentro del mismo creamos una nueva clase que se llame jdbcConexion ahora podemos ver la manera en que hemos armado el proyecto.
Package
Package
Vamos a crear el método que hará la conexión a la base de datos en la clase jdbcConexion, este método lo vamos a llamar getConnection y nos devolverá un objeto Connection.

package jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class jdbcConexion {
    /**
  * @author datojava.blogspot.com
  */
 public Connection getConnection() {
  // Declara el objeto connection = null de la clase java.sql.Connection
  Connection connection = null;

  // Variables para la conexion
  String url = "jdbc:oracle:thin:@localhost:1521:";
  String user = "system";
  String password = "root";
  String nameDriver = "oracle.jdbc.driver.OracleDriver";
  try {
   Class.forName(nameDriver);
   connection = DriverManager.getConnection(url, user, password);
  } catch (ClassNotFoundException e) {
   // Si no encuentra la clase del Driver
   System.out.println("Hay un problema con el driver");
   e.printStackTrace();
   return connection;
  } catch (SQLException e) {
   // Si Hay otro problema como clave o contraseña incorrecta
   System.out.println("Fallo la conexion");
   e.printStackTrace();
   return connection;
  }
  System.out.println("Conexion establecida");
  return connection;
 }
}

  
  
Si vemos en detalle el método, se dan cuenta de que he puesto algunas variables con los datos que necesita el DriverManager, estas variables están ahí solo para que se vea más ordenado pude haberlo puesto de una vez sin la creación de las variables aunque mejor practica es crear un archivo .properties en el cual tengamos todos esos datos y así no cableamos nada sino que lo sacamos de un archivo de configuración. Acuérdense que los datos para este ejemplo son los míos, tienen que cambiar la variable usuario y clave por el de ustedes, así como el puerto de oracle si lo han cambiado sino por defecto es el 1521.
Ahora en la clase control vamos hacer la prueba de la conexion a nuestra base de datos Oracle.

package control;

import java.sql.Connection;
import jdbc.jdbcConexion;

public class control {
 /**
  * @author datojava.blogspot.com
  */
 public static void main(String[] args) {
  //Creacion del objeto
  jdbcConexion conexion = new jdbcConexion();

  //Obteniendo la conexion
  Connection connection = conexion.getConnection();
 }
}

  
Obtain Connection
Obtain Connection

No hay comentarios :

Publicar un comentario