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

Creating Connections with DataSource Class

This section describes how to create connection objects with the DataSource class.

It is recommended now that connection objects are created by the DataSource implementation class, com.microsoft.sqlserver.jdbc.SQLServerDataSource. Here is a sample program that creates a connection object using the DataSource class without using JNDI services:

/**
 * SqlServerDataSource.java
 * Copyright (c) 2007 by Dr. Herong Yang. All rights reserved.
 */
import java.sql.*;
public class SqlServerDataSource {
  public static void main(String [] args) {
    Connection con = null;
    try {

// Setting up the DataSource object
      com.microsoft.sqlserver.jdbc.SQLServerDataSource  ds 
        = new com.microsoft.sqlserver.jdbc.SQLServerDataSource();
      ds.setServerName("localhost");
      ds.setPortNumber(1269);
      ds.setDatabaseName("AdventureWorksLT");
      ds.setUser("sa");
      ds.setPassword("HerongYang");
       
// Getting a connection object
      con = ds.getConnection();
      
// Getting database info
      DatabaseMetaData meta = con.getMetaData();
      System.out.println("Server name: " 
        + meta.getDatabaseProductName());
      System.out.println("Server version: "
        + meta.getDatabaseProductVersion());

// Closing the connection
      con.close();
    } catch (Exception e) {
      System.err.println("Exception: "+e.getMessage());
    }
  }
}

The output confirms that I got a good connection. Remember to include sqljdbc.jar in the classpath for compilation and execution:

C:\>javac -cp .;\local\lib\sqljdbc.jar SqlServerDataSource.java

C:\>java -cp .;\local\lib\sqljdbc.jar SqlServerDataSource
Server name: Microsoft SQL Server
Server version: 9.00.1399

Sections in This Chapter

Installing Microsoft JDBC Driver for SQL Server

Loading Driver Class with Class.forName()

DriverManager.getConnection() and Connection URL

Specifying Port Number in Connection URL

Closing the Database Connection - con.close()

Specifying Database Name in Connection URL

Incorrect Database Name in Connection URL

Creating Connections with DataSource Class

Dr. Herong Yang, updated in 2007
Creating Connections with DataSource Class