JDBC程式設計六步曲
阿新 • • 發佈:2018-12-14
第一步:註冊驅動
import java.sql.Driver; import java.sql.DriverManager; import java.sql.SQLException; public class JDBCTest01 { public static void main(String[] args){ /* * 第一步:註冊驅動程式 * 1.獲取驅動物件 * 2.註冊驅動 */ try { //1.獲取驅動物件 Driver driver = new com.mysql.jdbc.Driver(); //2.註冊驅動,呼叫DriverManager的registerDriver()方法 DriverManager.registerDriver(driver); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
第二步:獲取資料庫連線
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
public class JDBCTest02 {
public static void main(String[] args) {
try {
// 1.註冊驅動,先建立驅動物件,再呼叫DriverManager的registerDriver()方法
Driver driver = new com.mysql.jdbc.Driver();
DriverManager.registerDriver(driver);
// 2.獲取資料庫連線,呼叫DriverManager的getConnection()方法
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
System.out.println(conn);//執行結果 [email protected]
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
第三步:獲取資料庫操作物件
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCTest03 {
public static void main(String[] args) {
try {
// 1.註冊驅動,先建立驅動物件,再呼叫DriverManager的registerDriver()方法
Driver driver = new com.mysql.jdbc.Driver();
DriverManager.registerDriver(driver);
// 2.獲取資料庫連線,呼叫DriverManager的getConnection()方法
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
// 3.獲取資料庫操作物件,呼叫Connection的createStatement()方法
Statement stmt = conn.createStatement();
System.out.println(stmt);//執行結果: [email protected]
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
第四步:執行SQL語句之DML語句
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCTest04 {
public static void main(String[] args) {
try {
// 1.註冊驅動,先建立驅動物件,再呼叫DriverManager的registerDriver()方法
Driver driver = new com.mysql.jdbc.Driver();
DriverManager.registerDriver(driver);
// 2.獲取資料庫連線,呼叫DriverManager的getConnection()方法
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
// 3.獲取資料庫操作物件,呼叫Connection的createStatement()方法
Statement stmt = conn.createStatement();
// 4、執行SQL語句,呼叫Statement的executeQuery()方法
String sql = "select * from user";// 此時SQL語句不需要分號
ResultSet rs = stmt.executeQuery(sql);
System.out.println(rs);//執行結果:[email protected]
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
第五步:處理查詢結果集
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCTest05 {
public static void main(String[] args) {
try {
// 1.註冊驅動,先建立驅動物件,再呼叫DriverManager的registerDriver()方法
Driver driver = new com.mysql.jdbc.Driver();
DriverManager.registerDriver(driver);
// 2.獲取資料庫連線,呼叫DriverManager的getConnection()方法
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
// 3.獲取資料庫操作物件,呼叫Connection的createStatement()方法
Statement stmt = conn.createStatement();
// 4、執行SQL語句,呼叫Statement的executeQuery()方法
String sql = "select * from user";// 此時SQL語句不需要分號
ResultSet rs = stmt.executeQuery(sql);
/*
+----+--------+------+------------------+
| id | name | sex | email |
+----+--------+------+------------------+
| 1 | 張三 | 男 | [email protected] |
| 2 | 李四 | 女 | [email protected] |
| 3 | 王二 | 男 | [email protected] |
| 4 | 馬五 | 女 | [email protected] |
| 5 | 孫六 | 男 | [email protected] |
+----+--------+------+------------------+
*/
//5、處理查詢結果集
while(rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
String sex = rs.getString("sex");
String email = rs.getString("email");
System.out.println("編號"+id+"\t"+"姓名"+name+"\t"+"性別"+sex+"\t"+"郵箱"+email);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
第六步:釋放資源
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCTest06 {
public static void main(String[] args) {
Connection conn = null;// 資料庫連線物件
Statement stmt = null;// 資料庫操作物件
ResultSet rs = null;// 查詢結果集物件
try {
// 1.註冊驅動,先建立驅動物件,再呼叫DriverManager的registerDriver()方法
Driver driver = new com.mysql.jdbc.Driver();
DriverManager.registerDriver(driver);
// 2.獲取資料庫連線,呼叫DriverManager的getConnection()方法
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
conn = DriverManager.getConnection(url, user, password);
// 3.獲取資料庫操作物件,呼叫Connection的createStatement()方法
stmt = conn.createStatement();
// 4、執行SQL語句,呼叫Statement的executeQuery()方法
String sql = "select * from user";// 此時SQL語句不需要分號
rs = stmt.executeQuery(sql);
// 5、處理查詢結果集
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
String sex = rs.getString("sex");
String email = rs.getString("email");
System.out.println("編號" + id + "\t" + "姓名" + name + "\t" + "性別" + sex + "\t" + "郵箱" + email);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
// 6、關閉資源 倒序依次關閉
//6.1 當查詢結果集不為空時,先關閉結果集物件
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//6.2 當資料庫操作物件不為空時,再關閉資料庫操作物件
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//6.3 當資料庫連線物件不為空時,最後關閉資料庫連線物件
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}