Wednesday, March 07, 2007

Different oracle JDBC drivers

This information is from Oracle, I collect it here just for convenience.

The [ORACLE_HOME]/jdbc/lib directory contains:
- classes111.zip & classes111.jarClasses for use with JDK 1.1.x. It contains the JDBC driverclasses except classes necessary for NLS support in Object andCollection types.
- nls_charset11.zip & nls_charset11.jarNLS classes for use with JDK 1.1.x. It contains classes necessaryfor NLS support in Object and Collection types.
- classes111_g.zip & classes111_g.jarSame as classes111.zip, except that classes were compiled with"javac -g" and contain OracleLog traceing code.
- classes12.zip & classes12.jarClasses for use with JDK 1.2.x. It contains the JDBC driverclasses except classes necessary for NLS support in Object andCollection types.
- nls_charset12.zip & nls_charset12.jarNLS classes for use with JDK 1.2.x. It contains classes necessaryfor NLS support in Object and Collection types.
- classes12_g.zip & classes12_g.jarSame as classes12.zip, except that classes were compiled with"javac -g" and contain OracleLog tracing code.
- classes12dms.jarSame as classes12.jar except contains additional code to supportOracle Dynamic Monitoring Service.
- classes12dms_g.jarSame as classes12dms.jar except that classes were compiled with "javac -g" and contain OracleLog traceing code.
- ojdbc14.jarClasses for use with JDK 1.4. It contains the JDBC driverclasses except classes necessary for NLS support in Object andCollection types. Use nls_charset12.jar if needed.
- ojdbc14_g.jarSame as ojdbc14.jar except that classes were compiled with"javac -g" and contain OracleLog tracing code.
In general, .zip and .jar are identical except for theformat of the archive. Both the .zip and .jar formats are providedfor JDK 1.1 and JDK 1.2. Only .jar files will be provided for JDK1.4 and beyond. So far, there is no need for JDK 1.3 classes files;use classes12.jar with JDK 1.3.
Note that most of the classes pertaining to specific character setssupport in Oracle Object and Collection types are separated from thebasic zip/jar files. These NLS classes are packaged into theextension zip/jar files. This allows the user to include the NLSclasses only if necessary. Please refer to the "NLS Extension ZipFiles (for client-side only)" section for further details. Alsonote that the nls_charset files are much smaller than in priorreleases. These .zip/.jar files now contain a more compactrepresentation of the conversion information rather than actual.class files.
[ORACLE_HOME]/lib directory contains libocijdbc9.so, libocijdbc9_g.solibheteroxa9.so and libheteroxa9_g.so (on Solaris), which are theshared libraries used by the JDBC OCI driver.
[ORACLE_HOME]/jdbc/doc/javadoc.tar contains the JDBC Javadoc. Thisrelease contains a beta release of the Javadoc files for the publicAPI of the public classes of Oracle JDBC.
[ORACLE_HOME]/jdbc/demo/demo.tar contains sample JDBC programs.All of the sample programs have been rewritten to use JDK 1.2 and thenew Oracle standard sample schemas. They no longer use the old standbyscott/tiger schema. These new sample schemas are much more featurerich and so make it easier to demonstrate Oracle features. All Oraclesample code and training will be using these new schemas verysoon. Most already does.

Thin Driver:
the thin JDBC Driver can be used to develop both Java applets and Java applications. Since it is written completely in Java it is downloadable and therefore can be used with Java applets. It can also be used for Java applications but only if you are using TCP/IP. Unlike the JDBC OCI driver, the Thin JDBC driver only works with TCP/IP-based networks. Users who are running applications on non-TCP/IP networks are encouraged to use the JDBC OCI driver.

OCI Driver:
the JDBC OCI Driver is not designed for use with Java applets but designed for client-server Java applications and Java-based middle tiers. The Thin JDBC Driver is targeted for Java applet developers. The JDBC OCI driver transforms calls from Java to C [since the driver must use a layer of C in order to make calls to the OCI], the driver is written in a combination of Java and C which precludes it from being downloadable. Further, JDBC OCI driver also requires installation of the OCI libraries, SQL*Net, CORE libraries and other required support files on the machine on which the JDBC driver is installed i.e. on each of the client machines or the middle-tier Java application server.

Access Oracle JDBC FAQ.

1 comment:

Yelei Zhang said...

Driver Class name:
oracle.jdbc.pool.OracleConnectionPoolDataSource