JDBC HelloWorld

2018-01-09 19:11 更新

JDBC教程 - JDBC HelloWorld


以下部分顯示如何創(chuàng)建一個(gè)簡單的JDBC應(yīng)用程序。

它將向您展示如何打開數(shù)據(jù)庫連接,執(zhí)行SQL查詢并顯示結(jié)果。

我們需要按照以下步驟構(gòu)建JDBC應(yīng)用程序:

  • Register the JDBC driver
  • Open a connection
  • Execute a sql command, for example a query or an update statement
  • Extract data from result set after query
  • Clean up the environment


例子

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/*www  .j a  va 2s .com*/
public class Main {
  // JDBC driver name and database URL
  static final String JDBC_DRIVER = "org.hsqldb.jdbcDriver";
  static final String DB_URL = "jdbc:hsqldb:mem:db_file";

  // Database credentials
  static final String USER = "sa";
  static final String PASS = "";

  public static void main(String[] args) {
    Connection conn = null;
    Statement stmt = null;
    try {
      // Register JDBC driver
      Class.forName(JDBC_DRIVER);

      // Open a connection
      System.out.println("Connecting to database...");
      conn = DriverManager.getConnection(DB_URL, USER, PASS);

      // Execute a query
      System.out.println("Creating statement...");
      stmt = conn.createStatement();
      String sql;
      sql = "SELECT id, first, last, age FROM Employees";
      stmt.executeUpdate("CREATE TABLE Employees ( id INTEGER IDENTITY, first VARCHAR(256),  last VARCHAR(256),age INTEGER)");
      stmt.executeUpdate("INSERT INTO Employees VALUES(1,"Jack","Smith", 100)");

      ResultSet rs = stmt.executeQuery(sql);

      // Extract data from result set
      while (rs.next()) {
        // Retrieve by column name
        int id = rs.getInt("id");
        int age = rs.getInt("age");
        String first = rs.getString("first");
        String last = rs.getString("last");

        System.out.print("ID: " + id);
        System.out.print(", Age: " + age);
        System.out.print(", First: " + first);
        System.out.println(", Last: " + last);
      }
      // Clean-up environment
      rs.close();
      stmt.close();
      conn.close();
    } catch (SQLException se) {
      se.printStackTrace();
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      // finally block used to close resources
      try {
        if (stmt != null)
          stmt.close();
      } catch (SQLException se2) {
      }
      try {
        if (conn != null)
          conn.close();
      } catch (SQLException se) {
        se.printStackTrace();
      }
    }
    System.out.println("Goodbye!");
  }
}


注意

以下代碼使用hsql數(shù)據(jù)庫作為關(guān)系數(shù)據(jù)庫引擎。

hsql數(shù)據(jù)庫是一個(gè)純Java語言的數(shù)據(jù)庫,這意味著數(shù)據(jù)庫系統(tǒng)是用Java語言編寫的。 因此整個(gè)數(shù)據(jù)庫系統(tǒng)和JDBC驅(qū)動(dòng)程序是所有都包含在一個(gè)jar文件中。

hsql的JDBC驅(qū)動(dòng)程序名稱為 org.hsqldb.jdbcDriver 。

我們用來連接數(shù)據(jù)庫到hsql數(shù)據(jù)庫的URL是 jdbc:hsqldb:mem:db_file 。

URL中的 mem 告訴hsql數(shù)據(jù)庫系統(tǒng)創(chuàng)建基于內(nèi)存的表。所以我們可以一次又一次地執(zhí)行create table語句。

連接到hsql數(shù)據(jù)庫的用戶名為 sa ,密碼為空。

USER = "sa";
PASS = "";

Download JDBC_HSQL_Helloword.zip
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號