I am being asked to write a JDBC driver that wraps a non-SQL 3rd-party data API.
In order to understand what interface (classes and functions) my custom JDBC driver must implement, I have done the following:
-
Attempted to locate information for JDBC driver developers (not users) from Oracle’s JDK documentation, but the documentation does not make clear where the JDBC driver developer specifications are located – it is focused on users of JDBC (as far as I can see)
-
Looked in the /java/sql directory of the jdk1.7.0_09 installation’s source code. However, of the dozens of source code files in this directory, it is not clear which actually represent the required interfaces that must be implemented
-
Found the following sample JDBC driver: CsvJdbc, and downloaded the source code for this project for use as sample code; however, it is not clear which files implement required JDBC driver functionality, and which are specific to this JDBC driver
-
Found the following sample JDBC driver: JDBC File Driver, and attempted to download the source code for this project for use as sample code; however, only .class files seemed available
Is there a concise set of specifications available that describes the interface (classes and functions) that a minimal and/or recommended JDBC driver must implement?
You need the JDBC specification. It is available on the JCP site as JSR221.
Follow the link and click under the paragraph ‘If you intend to build an implementation of the specification…’. It will bring you to the download page for implementors.