Il 0% ha trovato utile questo documento (0 voti)
57 visualizzazioni

I Driver JDBC Di Oracle

Il documento descrive i tre tipi di driver JDBC forniti da Oracle: il driver Thin, il driver OCI e il driver KPRB. Sebbene differiscano nel modo in cui si collegano al database, supportano la stessa interfaccia e sintassi.

Caricato da

Marco Tripolini
Copyright
© Attribution Non-Commercial (BY-NC)
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato DOCX, PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
57 visualizzazioni

I Driver JDBC Di Oracle

Il documento descrive i tre tipi di driver JDBC forniti da Oracle: il driver Thin, il driver OCI e il driver KPRB. Sebbene differiscano nel modo in cui si collegano al database, supportano la stessa interfaccia e sintassi.

Caricato da

Marco Tripolini
Copyright
© Attribution Non-Commercial (BY-NC)
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato DOCX, PDF, TXT o leggi online su Scribd
Sei sulla pagina 1/ 3

I driver JDBC di Oracle

2 March 2010, 15:51

I driver JDBC di Oracle

Oracle

fornisce

tre

diversi

tipi

di

driver

JDBC

1) JDBC Thin Driver: non necessita di installazione locale di SQL*Net. Indipendente dalla piattaforma, perch contiene una propria versione TCP/IP del protocollo SQL*Net.

2) JDBC OCI: utile per applicazioni Java stand-alone. Richiede uninstallazione locale di SQL*Net (Oracle Client). 3) JDBC KPRB driver (connessione di default): per Stored Procedures Java e JSP residenti su Database JSP. Supportano tutti la medesima sintassi e la stessa interfaccia programmatica.

Oracle necessita di tre diversi driver per supportare diverse opzioni di deploy; tuttavia, dal codice si evince che differiscono solo nel modo usato per collegarsi al database.

importante ricordare che il driver deve essere della versione compatibile con la propria versione di JDK.

Il driver Oracle Thin


Oracle JDBC Thin driver usa si socket Java per eseguire la connessione al server. Fornisce una propria versione TCP/IP del protocollo SQL*Net. Poich completamente scritto in Java, indipendente dalla piattaforma e pu anche essere eseguito La String Se String si url stringa url usa = da di = Oracle un connessione browser la (applet). seguente:

"jdbc:oracle:thin:@nome_host:1521:SID_DEL_DB"; 10g Express invece:

"jdbc:oracle:thin:@nome_host:1521:XE";

Perci si nota che il SID da usare per la connessione sempre XE se si usa Oracl e Express; altrimenti, si trova nel file TNSNAMES.ORA: 1. SID_DEL_DB = 2. 3. 4. 5. 6. 7. 8. ) ) (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = nome_host)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORCL)

Un esempio funzionante: TestThin.java. 1. import java.sql.*; 2. class TestThin { 3. 4. 5. public static void main (String args []) throws SQLException { try {

6. 7. 8. 9. 10. 11. 12. 13. 14. 15. }

Class.forName ("oracle.jdbc.driver.OracleDriver"); } catch (ClassNotFoundException e) { e.printStackTrace();

Connection conn = DriverManager.getConnection ("jdbc:oracle:thin:@localhost:1521:orcl", "hr", "hr");

Statement stmt = conn.createStatement(); ResultSet rset hr.employees"); = stmt.executeQuery("select last_name from

16. 17. 18. 19. 20. } }

while (rset.next()) System.out.println (rset.getString(1)); stmt.close(); // Print col 1

Il Driver OCI.
Il driver JDBC OCI usa la tecnologia OCI (Oracle Call Interface) per interagire con il database. importante usare una versione del driver appropriata per la versione di Oracle Client installata. Questo driver esegue la connessione usando i servizi SQL*Net nativi.

Il driver JDBC OCI consente di chiamare OCI direttamente da Java, fornendo quindi una elevata compatibilit con specifiche versioni di Oracle. Poich usa chiamate a funzioni native, specifico per la piattaforma utilizzata. La stringa di connessione riportata di seguito String url = "jdbc:oracle:oci:@nome_server:1521:SID"; Di seguito riportato un semplice esempio di connessione: 1. import java.sql.*; 2. class TestOCI { 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Connection conn = DriverManager.getConnection ("jdbc:oracle:oci:@localhost:1521:orcl", "hr", "hr"); } public static void main (String args []) throws SQLException { try { Class.forName ("oracle.jdbc.driver.OracleDriver"); } catch (ClassNotFoundException e) { e.printStackTrace();

14. 15.

Statement stmt = conn.createStatement(); ResultSet rset hr.employees"); = stmt.executeQuery("select last_name from

16. 17. 18. 19. 20. } }

while (rset.next()) System.out.println (rset.getString(1)); stmt.close();

Il driver KPRB (JDBC Server-side Internal Driver)


Usato principalmente per scrivere stored procedure Java, trigger e JSP su database. Usa la sessione di database corrente/predefinita , quindi non necessita di URL, nome utente o password.

Si pu ottenere un reference alla connessione corrente chiamando il metodo OracleDriver.defaultConnection(). Si noti che non necessario indicare lURL del database, il nome utente e la password. alt res essenziale ricordare di non chiudere la connessione predefinita. 1. import java.sql.*; 2. class dbAccess { 3. 4. 5. public static void main (String args []) throws SQLException { Connection conn = (new oracle.jdbc.driver.OracleDriver()).defaultConnection(); 6. 7. 8. Statement stmt = conn.createStatement(); ResultSet rset hr.employees"); 9. 10. 11. 12. 13. } } while (rset.next()) System.out.println (rset.getString(1)); stmt.close(); = stmt.executeQuery("select last_name from

Potrebbero piacerti anche