Learning about JDBC driver

Java Database Connectivity (JDBC) is an Application Programming Interface (API), which defines how a client should access and interact with a database from Java. Each provider (IBM, Oracle, Sun, Microsoft, and others) implements the mechanism (the "How To") for its own product, allowing the client not to be bothered with the details of each implementation and worrying only about its interface. In Java slang, this is known merely as a controller or JDBC driver.

Note

A JDBC driver, generally speaking, consists of one or various files with a .jar extension, which must be copied on a certain path (Java CLASSPATH, that is) so that applications can make use of it instead.

In order for a JDBC driver to be used, Java programs require the following information:

  • URL: This is a string that specifies, among other things, the protocol, location of the server, port, and name of the database.
  • Driver: This is the name of the class that implements the java.sql.Driver interface.
  • User: This is the user with the necessary privileges on the database engine (this parameter might be optional depending on the case).
  • Password: This is the password corresponding to the user (this parameter might also be optional).

In some cases, the inclusion of the user and password is supported within the URL, so we only need to define the URL and Driver parameters.

The syntax to indicate the URL and driver class name should always be present in the implementation documentation of each provider.

For example, in the case of MySQL, the information regarding the implementation can be found in the following web page:

http://dev.mysql.com/downloads/connector/j/5.1.html

The implementation details are as follows:

  • Driver: com.mysql.jdbc.Driver
  • URL: jdbc:mysql://localhost:3306/MyDataBase
  • Protocol: jdbc:mysql
  • Name server: localhost (local address)
  • Port: 3306 (default port)
  • Database: MyDataBase