Download Oracle y Java
Document related concepts
no text concepts found
Transcript
Oracle y Java Francisco Moreno Bases de Datos II Universidad Nacional Acceso a Oracle desde Java • Hay dos formas: 1. En forma aislada (stand alone). Es decir, un programa Java que accede a la base de datos e imprime los resultados por “consola”. 2. Por medio de JSP. Se accede a la base de datos mediante una página JSP y los resultados se pueden visualizar por medio de un navegador. Se requiere para este caso un servidor web (Tomcat, Jrun, etc.) Acceso a Oracle desde Java Se presenta a continuación la primera forma: JDBC: Conjunto de clases Java que permiten la interacción con la base de datos. Ejemplo. Crear la siguiente tabla: JDBC= Java DataBase Connection DROP TABLE empleado; CREATE TABLE empleado ( codigo NUMBER(3) PRIMARY KEY, nom VARCHAR2(10) NOT NULL, salario NUMBER(3) NOT NULL ); INSERT INTO empleado VALUES(10, 'Ana',100); INSERT INTO empleado VALUES(22, 'Lisa', 200); INSERT INTO empleado VALUES(33, 'Bill', 300); COMMIT; Acceso a Oracle desde Java - Crear el siguiente código en cualquier editor de Java (por ejemplo, en el JCreator) - El archivo llamarlo conexion.java import java.sql.*; import java.math.*; class conexion { static public void main( String[] args ) { Connection conn; Statement sentencia; ResultSet resultado; System.out.println( "Conexión a la base de datos..." ); Continúa try{ // Se carga el driver JDBC-ODBC Class.forName ("oracle.jdbc.driver.OracleDriver"); } catch( Exception e ) { System.out.println("No se pudo cargar el driver JDBC"); return; password user } try{ // Se establece la conexión con la base de datos conn = DriverManager.getConnection ("jdbc:oracle:thin:@pacho:1521:xe","gato", "gato"); sentencia = conn.createStatement(); } catch( SQLException e ) { System.out.println( "No hay conexión con la base de datos." ); return; } Nombre de la BD (Host) y puerto (se pueden consultar en el archivo tnsnames.ora) Continúa try { System.out.println( "Seleccionando..." ); resultado = sentencia.executeQuery ("SELECT codigo,nom,salario FROM empleado"); //Se recorren las tuplas retornadas while (resultado.next()) { System.out.println(resultado.getInt("codigo")+ "---" + resultado.getString("nom")+ "---" + resultado.getInt("salario")); } Continúa conn.close(); //Cierre de la conexión } catch( SQLException e ){ System.out.println("Error: " + e.getMessage()); } System.out.println("Consulta finalizada."); } //Fin del main } //Fin de la clase Fin del código Compilar y ejecutar… (Con el JCreator use por ejemplo el menú Build , Run) El resultado en pantalla debe ser: Conexión a la base de datos... SELECCIONANDO... 10---Ana---100 22---Lisa---200 33---Bill---300 Consulta finalizada. Acceso a Oracle desde Java • Para que el programa Java pueda acceder a la base de datos, se debe adicionar a Java una librería especial ("driver" para Oracle). • Se puede bajar del sitio oficial de Oracle, y de la página del curso, (menú Recursos): classes129i.jar (el driver debe ser el apropiado según la versión del JDK y de la versión del SGBD) • El driver se coloca en el directorio c:\java\jre\lib\ext En general, allí se colocan las librerías adicionales que se deseen incorporar a Java. java es el nombre del directorio donde está instalado Java (el jdk) Otro ejemplo • Veamos ahora un ejemplo con figuras, ver archivo Figuras.rar en la página del curso, menú Varios