Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Używasz wielu sterowników Oracle JDBC w jednej aplikacji Java?

Jeśli nie zarejestrujesz sterowników, unikniesz ich ładowania przez ten sam classloader.

Następnie możesz tworzyć połączenia przy użyciu dwóch różnych sterowników, ładując je za pomocą oddzielnych programów ładujących klasy:

// Oracle 8 connection
File jar = new File("/path/to/oracle8.jar");
URL[] cp = new URL[1];
cp[0] = jar.toURI().toURL();
URLClassLoader ora8loader = new URLClassLoader(cp, ClassLoader.getSystemClassLoader());
Class drvClass = ora8loader.loadClass("oracle.jdbc.driver.OracleDriver");
Driver ora8driver = (Driver)drvClass.newInstance();

Properties props = new Properties();
// "user" instead of "username"
props.setProperty("user", "my-user");
props.setProperty("password", "my-password");
Connection ora8conn = ora8driver.connect("jdbc:oracle:thin:@some-oracle-8-server:port:sid",props);

Następnie zrób to samo dla sterownika Oracle 12.

możesz możesz także nadal używać "innego" sterownika przez DriverManager , ale nie jestem tego pewien.

Istnieją pewne przypadki, w których dostęp do określonych klas Oracle staje się nieco skomplikowany, ale ogólnie można bez problemu korzystać z połączeń utworzonych w ten sposób.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Długość przechowywania BLOB w Oracle

  2. Zaznacz wszystkie wiersze, które występują na liście 2927 identyfikatorów

  3. dołącz do trzech tabel, aby uzyskać konkretny wynik

  4. Odwróć ciąg słowo po słowie za pomocą SQL

  5. Nie można wstawić znaków arabskich do bazy danych Oracle