December 30, 2017

JDBC Connections Cheat Sheet

Abstract

This is a quick reference for JDBC connections for common databases. I seem to have to lookup this information a lot, so I figured it be good to have a reference all in one place.

Derby

<dependency>
    <groupId>org.apache.derby</groupId>
    <artifactId>derbyclient</artifactId>
    <version>10.11.1.1</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.apache.derby</groupId>
    <artifactId>derby</artifactId>
    <version>10.11.1.1</version>
    <scope>test</scope>
</dependency>

Embedded (in-memory)

Class.forName("org.apache.derby.jdbc.EmbeddedDriver");

String connectionUrl
    = "jdbc:derby:C:/My Databases/Derby/Test;user=;password=;create=true";

Connection conn
    = DriverManager.getConnection(connectionUrl);

Remote

Class.forName("org.apache.derby.jdbc.ClientDriver");

String connectionUrl
    = "jdbc:derby://localhost:1527/widget";

String user = "sa";
String pass = "sa";

Connection conn
    = DriverManager.getConnection(connectionUrl, user, pass);

PostgeSQL

<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>42.1.4.jre7</version>
    <scope>test</scope>
</dependency>
Class.forName("org.postgresql.Driver");

String connectionUrl
    = "jdbc:postgresql://localhost:5432/widget";

String user = "widgetapp";
String pass = "widgetapp";

Connection conn
    = DriverManager.getConnection(connectionUrl, user, pass);

Oracle

Download JDBC drivers from http://www.oracle.com/technetwork/database/features/jdbc/index.html

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.4</version>
    <scope>system</scope>
    <systemPath>${basedir}/lib/ojdbc6.jar</systemPath>
</dependency>
Class.forName("oracle.jdbc.driver.OracleDriver");

String SID
    = "xe";

String connectionUrl
    = "jdbc:oracle:thin:@localhost:1521:" + SID;

String user = "hr";
String pass = "hr";

Connection conn
    = DriverManager.getConnection(connectionUrl, user, pass);

Summary

That’s it…enjoy!

2 comments:

  1. What about MS SQLExpress and MySQL?

    ReplyDelete
  2. I would be happy to add them. Email me examples of JDBC connection string, fully-qualified driver name, and Maven dependency and I will I add them. I don't actively work with the databases you mentioned

    ReplyDelete