Java學習——關於JDBC的一點分享
1、下載驅動程序並部署
我們在對數據庫進行操作之前要先連接到數據庫(這裏以Intellij Idea連接MySQL為例)。
(1)、新建一個Idea工程,下載數據庫連接驅動程序,並放到Idea的工程文件夾下。
(2)、加載JDBC驅動程序
在連接數據庫之前,首先要加載想要連接的數據庫的驅動到JVM(Java虛擬機),可以用forName(String className)方法實現。
2、連接到數據庫並獲取數據庫連接對象
(1)JDBC連接所需的參數(user,password,url)
a、user 用戶名
b、password 密碼
c、url 定義了連接數據庫時的協議、子協議、數據源標識。
(2)創建數據庫的連接
a、要連接數據庫,需要向java.sql.DriverManager請求並獲得Connection對象,該對象就代表一個數據庫的連接。
b、使用DriverManager的getConnectin(String url , String username , String password )方法傳入指定的欲連接的數據庫的路徑、數據庫的用戶名和
密碼來獲得。
(3)創建一個preparedStatement
要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3種類型:
a、執行靜態SQL語句。通常通過Statement實例實現。
b、執行動態SQL語句。通常通過PreparedStatement實例實現。
c、執行數據庫存儲過程。通常通過CallableStatement實例實現
3、執行SQL語句
Statement接口提供了三種執行SQL語句的方法:executeQuery 、executeUpdate和execute
數據庫連接對象conn調用上面的statement方法(靜態sql語句),將SQL語句以字符串的形式賦給stu_Mgr_select_select_all
操作結果集的兩種情況:
1、執行更新返回的是本次操作影響到的記錄。
2、執行查詢返回的結果是一個ResultSet對象(以下是查詢)
4、關閉JDBC對象資源
操作完成以後要把所有使用的JDBC對象全都關閉,以釋放JDBC資源.
======================================================================================分割線
第一次發博客,如有不正確的地方,歡迎大家指正。
源代碼放下面,驅動程序可以到sun公司下載最新版
package studentScoreMgrSystem;
//引入接口,連接數據庫,執行數據庫操作,使用jdbc
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
class selectStudentMssg_handler implements studentMssg_interface {
public void selectStu() {
System.out.println("查找學生信息");
//加載jdbc驅動程序包
String driver = "com.mysql.jdbc.Driver";
// 數據庫連接串
String url = "jdbc:mysql://127.0.0.1:3306/curd";
// 用戶名
String username = "root";
// 密碼
String password = "4950";
Connection conn = null;
Statement stu_Mgr_select_stmt = null;
ResultSet stu_Mgr_select_rs = null;
try {
// 1、加載數據庫驅動( 成功加載後,會將Driver類的實例註冊到DriverManager類中)
Class.forName(driver);
// 2、獲取數據庫連接
conn = DriverManager.getConnection(url, username, password);
if (!conn.isClosed())
System.out.println("Succeeded connecting to the Database!");
// 3、獲取數據庫操作對象
stu_Mgr_select_stmt = conn.createStatement();
// 4、定義操作的SQL語句
String stu_Mgr_select_select_all = "select * from stu_score";
// 5、執行數據庫操作,結果存到stu_Mgr_select_中
stu_Mgr_select_rs = stu_Mgr_select_stmt.executeQuery(stu_Mgr_select_select_all);
// 6、獲取並操作結果集
} catch (Exception e) {
e.printStackTrace();
}finally {
// 7、關閉對象,回收數據庫資源
if (stu_Mgr_select_rs != null) { //關閉結果集對象
try {
stu_Mgr_select_rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (stu_Mgr_select_stmt != null) { // 關閉數據庫操作對象
try {
stu_Mgr_select_stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) { // 關閉數據庫連接對象
try {
if (!conn.isClosed()) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
Java學習——關於JDBC的一點分享