JDBC連接數據庫過程
1、在開發環境中加載指定數據庫的驅動程序。例如,接下來的實驗中,使用的數據庫是MySQL,所以需要去下載MySQL支持 JDBC的驅動程序(最新的是:mysql-connector-java-5.1.18-bin.jar);而開發環境是MyEclipse,將下載得到的驅動程序加載進開發環境中(具體示例的時候會講解如何加載)。
2、在Java程序中加載驅動程序。在Java程序中,可以通過 “Class.forName(“指定數據庫的驅動程序”)” 方式來加載添加到開發環境中的驅動程序,例如加載MySQL的數據驅動程序的代碼為: Class.forName(“com.mysql.jdbc.Driver”)
3、創建數據連接對象:通過DriverManager類創建數據庫連接對象Connection。DriverManager類作用于Java程序和JDBC驅動程序之間,用于檢查所加載的驅動程序是否可以建立連接,然后通過它的getConnection方法,根據數據庫的 URL、用戶名和密碼,創建一個JDBC Connection 對象。如:Connection connection = DriverManager.geiConnection(“連接數據庫的URL", "用戶名", "密碼”)。其中,URL=協議名+IP地址(域名)+端口+數據庫名稱;用戶名和密碼是指登錄數據庫時所使用的用戶名和密碼。具體示例創建MySQL的數據庫連接代碼如下:
Connection connectMySQL = DriverManager.geiConnection(“jdbc:mysql://localhost:3306/myuser","root" ,"root" );
4、創建Statement對象:Statement 類的主要是用于執行靜態 SQL 語句并返回它所生成結果的對象。通過Connection 對象的 createStatement()方法可以創建一個Statement對象。例如:Statement statament = connection.createStatement(); 具體示例創建Statement對象代碼如下:
Statement statamentMySQL =connectMySQL.createStatement();
5、調用Statement對象的相關方法執行相對應的 SQL 語句:通過execuUpdate()方法用來數據的更新,包括插入和刪除等操作,例如向staff表中插入一條數據的代碼:
statement.excuteUpdate( "INSERT INTO staff(name, age, sex,address, depart, worklen,wage)" + " VALUES ('Tom1', 321, 'M', 'china','Personnel','3','3000' ) ") ;
通過調用Statement對象的executeQuery()方法進行數據的查詢,而查詢結果會得到 ResulSet對象,ResulSet表示執行查詢數據庫后返回的數據的集合,ResulSet對象具有可以指向當前數據行的指針。通過該對象的 next()方法,使得指針指向下一行,然后將數據以列號或者字段名取出。如果當next()方法返回null,則表示下一行中沒有數據存在。使用示例代碼如下:
ResultSet resultSel = statement.executeQuery( "select * from staff" );
6、關閉數據庫連接:使用完數據庫或者不需要訪問數據庫時,通過Connection的close() 方法及時關閉數據連接。