JDBC Tutorials - Herong's Tutorial Notes
Dr. Herong Yang, Version 2.11

Establishing Connections from JDBC to Databases

This section provides some quick information on establishing connections from JDBC to databases.

JDBC 4.0 API offers two different ways to establish a connection to the database server:

1. Using DrirverManager Class: DriverManager.getConnection(connection_url) - The driver manager passes the connection URL to all loaded JDBC drivers, hoping that one of them will recognize the URL and creates a connection. See sample code below:

   // Loading a JDBC driver
   Class.forName("acme.db.Driver");

   // Creating a connection
   String url = "jdbc:odbc:fred";
   Connection con = DriverManager.getConnection(url,"user","pass");

2. Using DataSource Object: ds.getConnection() - A DataSource object should be configured and registered with a JNDI (Java Naming and Directory Interface) directory service only once. When a connection is needed, the registered DataSource object can be retrieved back from JNDI. A connection can be then created from the retrieved DataSource object.

   // Registering a DataSource
   VendorDataSource vds = new VendorDataSource();
   vds.setServerName("my_database_server");
   vds.setDatabaseName("my_database");
   vds.setDescription("the data source for inventory and personnel");
   Context ctx = new InitialContext();
   ctx.bind("jdbc/AcmeDB", vds);

   // Creating a connection
   Context ctx = new InitialContext();
   DataSource ds = (DataSource)ctx.lookup("jdbc/AcmeDB");
   Connection con = ds.getConnection("genius", "abracadabra");

JDK documentation suggests to use Database object to create connection objects whenever possible.

Sections in This Chapter

What Is JDBC?

JDBC Version and History

JDBC Driver Types

Establishing Connections from JDBC to Databases

DriverManager - Loading JDBC Driver

DriverManager - Connection URL

Dr. Herong Yang, updated in 2007
Establishing Connections from JDBC to Databases