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