Ir al contenido principal

Conectador a Oracle - Postgres - Mysql - SQL Sever con JDBC - Java

Para conectar a Oracle, Postgres, Mysql y SQL Server es necesaria unicamente una clase de Conexiòn y Una clase ObjetoConexiòn donde definir los valores de la Conexion.

Tener en cuenta la estructura de paquetes, para no tener errror en el momento de ejecutar.

Clase Conexion:

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.develtrex.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
/**
 *
 * @author 007M
 */
public class Conexion {
    private Connection cnx;
    private String ipHost;
    private String puerto;
    private String baseDatos;
    private String usuario;
    private String contrasena;
    private String cadenaConexion;
    private String gestorBD;
    private String driver;
    public Conexion(
            String paramIpHost,
            String paramPuerto,
            String paramBaseDatos,
            String paramUsuario,
            String paramContrasena,
            String paramGestorBD) {
        this.ipHost = paramIpHost;
        this.puerto = paramPuerto;
        this.baseDatos = paramBaseDatos;
        this.usuario = paramUsuario;
        this.contrasena = paramContrasena;
        this.gestorBD = paramGestorBD;
        if (gestorBD.equalsIgnoreCase("ORACLE")) {
            this.cadenaConexion = "jdbc:oracle:thin:@" + ipHost + ":" + puerto + ":" + baseDatos;
            this.driver = "oracle.jdbc.OracleDriver";
        } else if (gestorBD.equalsIgnoreCase("MYSQL")) {
            this.cadenaConexion = "jdbc:mysql://" + ipHost + ":" + puerto + "/" + baseDatos;
            this.driver = "com.mysql.jdbc.Driver";
        } else if(gestorBD.equalsIgnoreCase("POSTGRES")){
            this.cadenaConexion = "jdbc:postgresql://" + ipHost + ":" + puerto + "/" + baseDatos;
            this.driver = "org.postgresql.Driver";
        }else if(this.gestorBD.equalsIgnoreCase("SQLSERVER")){
            this.cadenaConexion = "jdbc:sqlserver://" + ipHost + ":" + puerto + ";DatabaseName=" + baseDatos;
            this.driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
        }else {
            System.err.println("No existe implementacion para ese gestor");
        }
    }
    public boolean conectarBD() throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException {
        try {
            Class.forName(this.driver).newInstance();
            cnx = DriverManager.getConnection(cadenaConexion, usuario, contrasena);
            cnx.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
            cnx.setAutoCommit(false);
            return true;
        } catch (ClassNotFoundException ex) {
            System.err.println("causa: " + ex.getCause());
            System.err.println("Mensaje: " + ex.getMessage());
            System.err.println("Localizacion: " + ex.getLocalizedMessage());
            System.err.println("Traza: " + ex.getStackTrace());
            throw ex;
        } catch (InstantiationException ex) {
            System.err.println("causa: " + ex.getCause());
            System.err.println("Mensaje: " + ex.getMessage());
            System.err.println("Localizacion: " + ex.getLocalizedMessage());
            System.err.println("Traza: " + ex.getStackTrace());
            throw ex;
        } catch (IllegalAccessException ex) {
            System.err.println("causa: " + ex.getCause());
            System.err.println("Mensaje: " + ex.getMessage());
            System.err.println("Localizacion: " + ex.getLocalizedMessage());
            System.err.println("Traza: " + ex.getStackTrace());
            throw ex;
        } catch (SQLException ex) {
            System.err.println("causa: " + ex.getCause());
            System.err.println("Mensaje: " + ex.getMessage());
            System.err.println("Localizacion: " + ex.getLocalizedMessage());
            System.err.println("Traza: " + ex.getStackTrace());
            throw ex;
        }
    }
    public boolean desconectarBD() throws SQLException {
        try {
            cnx.close();
            return true;
        } catch (SQLException ex) {
            System.err.println("causa: " + ex.getCause());
            System.err.println("Mensaje: " + ex.getMessage());
            System.err.println("Localizacion: " + ex.getLocalizedMessage());
            System.err.println("Traza: " + ex.getStackTrace());
            throw ex;
        }
    }
    public boolean confirmar() throws SQLException {
        try {
            cnx.commit();
            return true;
        } catch (SQLException ex) {
            System.err.println("causa: " + ex.getCause());
            System.err.println("Mensaje: " + ex.getMessage());
            System.err.println("Localizacion: " + ex.getLocalizedMessage());
            System.err.println("Traza: " + ex.getStackTrace());
            throw ex;
        }
    }
    public boolean deshacer() throws SQLException {
        try {
            cnx.rollback();
            return true;
        } catch (SQLException ex) {
            System.err.println("causa: " + ex.getCause());
            System.err.println("Mensaje: " + ex.getMessage());
            System.err.println("Localizacion: " + ex.getLocalizedMessage());
            System.err.println("Traza: " + ex.getStackTrace());
            throw ex;
        }
    }
    public Connection getCnx() {
        return cnx;
    }
    public void setCnx(Connection cnx) {
        this.cnx = cnx;
    }
    public String getIpHost() {
        return ipHost;
    }
    public void setIpHost(String ipHost) {
        this.ipHost = ipHost;
    }
    public String getPuerto() {
        return puerto;
    }
    public void setPuerto(String puerto) {
        this.puerto = puerto;
    }
    public String getBaseDatos() {
        return baseDatos;
    }
    public void setBaseDatos(String baseDatos) {
        this.baseDatos = baseDatos;
    }
    public String getUsuario() {
        return usuario;
    }
    public void setUsuario(String usuario) {
        this.usuario = usuario;
    }
    public String getContrasena() {
        return contrasena;
    }
    public void setContrasena(String contrasena) {
        this.contrasena = contrasena;
    }
    public String getCadenaConexion() {
        return cadenaConexion;
    }
    public void setCadenaConexion(String cadenaConexion) {
        this.cadenaConexion = cadenaConexion;
    }
    public String getGestorBD() {
        return gestorBD;
    }
    public void setGestorBD(String gestorBD) {
        this.gestorBD = gestorBD;
    }
    public String getDriver() {
        return driver;
    }
    public void setDriver(String driver) {
        this.driver = driver;
    }
}
Clase: ObjetoConexion:

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.develtrex.dao;
import java.sql.SQLException;
/**
 *
 * @author 007M
 */
public class ObjetoConexion {
    private Conexion oracle;
    private Conexion mysql;
    private Conexion postgres;
    private Conexion sqlServer;
   
    public boolean conectarOracle() throws ClassNotFoundException, InstantiationException, InstantiationException, IllegalAccessException, SQLException{
        oracle=new Conexion(
                "192.168.1.124",
                "1521",
                "orcl",
                "sysferronor",
                "sysferronor",
                "ORACLE"
                );
        return oracle.conectarBD();
    }
   
    public boolean conectarMysql() throws ClassNotFoundException, InstantiationException, InstantiationException, IllegalAccessException, SQLException{
        mysql=new Conexion(
                "192.168.1.124",
                "3306",
                "celltower",
                "root",
                "toor",
                "MYSQL"
                );
        return mysql.conectarBD();
    }
   
    public boolean conectarPostgres() throws ClassNotFoundException, ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException{
        postgres=new Conexion(
                "192.168.1.124",
                "5432",
                "tumi",
                "postgres",
                "toor",
                "POSTGRES"
                );
        return postgres.conectarBD();
    }
   
    public boolean conectarSQLServer() throws ClassNotFoundException, ClassNotFoundException, InstantiationException, InstantiationException, IllegalAccessException, IllegalAccessException, SQLException{
        sqlServer=new Conexion(
                "192.168.1.70",
                "1433",
                "appdevel",
                "sa",
                "",
                "SQLSERVER"
                );
        return sqlServer.conectarBD();
    }
   
    public Conexion getOracle() {
        return oracle;
    }
    public void setOracle(Conexion oracle) {
        this.oracle = oracle;
    }
    public Conexion getMysql() {
        return mysql;
    }
    public void setMysql(Conexion mysql) {
        this.mysql = mysql;
    }
    public Conexion getPostgres() {
        return postgres;
    }
    public void setPostgres(Conexion postgres) {
        this.postgres = postgres;
    }
   
}
 Clase Principal o de Ejecuciòn:

package com.develtrex.tester;
import com.develtrex.dao.ObjetoConexion;
import java.sql.SQLException;

/**
 *
 * @author 007M
 */
public class Main {
    public static void main(String arg[]) throws ClassNotFoundException, ClassNotFoundException, InstantiationException, InstantiationException, IllegalAccessException, SQLException {
        ObjetoConexion objCnx=new ObjetoConexion();
         System.out.println("Postgres: "+objCnx.conectarPostgres());
         System.out.println("Mysql: "+objCnx.conectarMysql());
         System.out.println("Oracle: "+objCnx.conectarOracle());
         System.out.println("SqlServer: "+objCnx.conectarSQLServer());       
    }
}

Entradas más populares de este blog

Conexion JDBC - JAVA a travès de un archivo Properties

Para conectar a bases de datos con el archivo properties necesitas definir la siguiente estructura:

Rutas de los Archivos Properties, es esas rutas tienes que haber creado tus archivos properties:

package com.develtrex.util;
import java.net.URL;
/**
 *
 * @author 007M
 */
public class Ruta {
    private final String dbOracle="/com/develtrex/propiedad/dboracle.properties";
    private final String dbMysql="/com/develtrex/propiedad/dbmysql.properties";
    private final String dbPostgres="/com/develtrex/propiedad/dbpostgres.properties";
    private final String dbSqlServer="/com/develtrex/propiedad/dbsqlserver.properties";

    public URL getFileDbOracle(){
        return getClass().getResource(dbOracle);
    }

    public URL getFileDbMysql(){
        return getClass().getResource(dbMysql);
    }

    public URL getFileDbPostgres(){
        return getClass().getResource(dbPostgres);
    }

    public URL getFileDbSqlServer(){
        return getClass…

Registrar driver oracle en iReport 3.7.1

Esta entrada la estoy escribiendo porque en algún momento necesite conectar ireport con mi base de oracle, para asi poder crear reportes, además aquí tambien se registran los archivos Jar para ordenar las columnas de un crosstab, pero esto lo explicare en otra entrada.
Bueno comenzemos, primero que nada abra su ireport la versión que tuviese. Luego de esto solo seguir todos los pantallazos que colocaré.
fig 1: Drivers para conexión a bases de datos.
En la fig1 se muestran todos lo drivers con los cuales se establece la conexión a base de datos a través de ireport, como se puede observar hay drivers de color rojo y negro, los negros están activos y los rojos son los drivers que aún no han sido registrados, en esta ocasión vamos a registrar el driver para conectarnos a una base de datos oracle.
Registrando el driver de oracle:
fig 2: Pestaña herramientas, subitem opciones
Una vez que hacemos click en el item Opciones nos saldra una ventana como la imagen de la fig 3.
fig 3: Ventana …

Instalando Open Broadcaster Software en CentOS 7

Saludos. Soy @jofrantoba. En este post te enseñare a instalar el OBS Studio el cual te permitira hacer grabaciones de audio y video, asi como también realizar Streaming a través de facebook, youtube y otros.

Paso 1: Instalar repositorio EPEL
En este enlace podrás encontrar el post de como hacerlo http://kiongotechnology.com/i-d/vblogdev/4-instalar-repo-epel-release-en-centos-7
Paso 2: Instalar repositorio RPM Fusion
En este enlace podrás encontrar el post de como hacerlo http://kiongotechnology.com/i-d/vblogdev/5-instalar-repo-rpmfusion-en-centos-7
Paso 3: Instalar repositorio Nux Desktop x86_64
En este enlace podrás encontrar el post de como hacerlo http://kiongotechnology.com/i-d/vblogdev/8-instalando-nux-desktop-x86-64-en-centos7
Paso 4: Instalar las siguientes librerias con el siguiente comando ejecutado en tu terminal
sudo yum install gcc gcc-c++ gcc-objc cmake git

Paso 5: Instalar las siguiente dependencias de OBS Studio ejecutando el siguiente comando en tu terminal

sudo yum install lib…