作為複習總結的筆記,我羅列了幾個jdbc步驟,後邊舉個簡單的例子,其中的try塊請讀者自行處理. /* * 1.下載驅動包:com.mysql.jdbc.Driver;網上很多下載資源,自己找度娘,此處不再提供; * * 2.將驅動包導入項目,並add to build path,具體步驟去問度娘. ...
作為複習總結的筆記,我羅列了幾個jdbc步驟,後邊舉個簡單的例子,其中的try塊請讀者自行處理.
/*
* 1.下載驅動包:com.mysql.jdbc.Driver;網上很多下載資源,自己找度娘,此處不再提供;
*
* 2.將驅動包導入項目,並add to build path,具體步驟去問度娘.
*
* 3.載入驅動:使用Class類的forName(String driver)方法獲得給定字元串名的類或者介面相關的對象;
*
* 4.配置資料庫信息:包括資料庫url/user/pass等;
*
* 5.獲得連接對象:使用DriverManager類的getConnection()方法獲得Connection鏈接對象conn;
*
* 6.預處理sql:使用Connection的preparedStatemment()方法對拼好的sql語句進行預處理,
* 並得到PreparedStatemment對象pst;
*
* 7.執行操作:使用pst的executeQuery()方法獲得查詢的結果集或使用pst的executeUpdate()方法獲得資料庫受影響的條數;
*
* 8.釋放資源:操作結束後,立即使用PreparedStatemment的close()方法和Connection的close()方法來釋放對應的對象,
* 而不是等待對象自動關閉才釋放.
1 package com.cnblogs.chuanyueinlife; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.PreparedStatement; 6 import java.sql.ResultSet; 7 import java.sql.SQLException; 8 9 /** 10 * JAVA鏈接MySQL資料庫的步驟示例: 11 * 12 * @author 張建(chuanyueinlife) 13 * 14 */ 15 public class JdbcTest { 16 17 static Connection conn = null; 18 static PreparedStatement pst = null; 19 20 public static void main(String[] args) { 21 // 實例1.查詢操作: 22 String sql = "SELECT * FROM `user` WHERE user_name =? AND pass_word = ?";// 拼sql語句(有防註入占位符) 23 selectDemo(sql); 24 // 實例2.刪除 25 String sql1 = "DELETE FROM `user` WHERE user_name = 'zj'"; 26 deleteDemo(sql1); 27 } 28 29 public static void deleteDemo(String sql) { 30 getConn(); 31 getPst(sql); 32 try { 33 int num = pst.executeUpdate(); 34 System.out.println("成功刪除了" + num + "條記錄!"); 35 36 } catch (SQLException e) { 37 // TODO Auto-generated catch block 38 e.printStackTrace(); 39 } 40 closeAll();// 釋放資源 41 } 42 43 public static void selectDemo(String sql) { 44 getConn(); 45 getPst(sql); 46 try { 47 pst.setString(1, "admin"); 48 pst.setString(2, "admin"); 49 ResultSet rs = pst.executeQuery(); 50 System.out.println("用戶ID\t用戶名\t密碼"); 51 52 while (rs.next()) { 53 System.out 54 .println(rs.getInt("id") + "\t" + rs.getString("user_name") + "\t" + rs.getString("pass_word")); 55 } 56 } catch (SQLException e) { 57 // TODO Auto-generated catch block 58 e.printStackTrace(); 59 } 60 closeAll();// 釋放資源 61 } 62 63 public static void getConn() { 64 65 /* 66 * 配置資料庫信息: 67 */ 68 String driver = "com.mysql.jdbc.Driver";// 驅動 69 String url = "jdbc:mysql://localhost:3306/zj";// 資料庫url 70 String user = "root";// 資料庫用戶名 71 String pass = "123456";// 資料庫密碼 72 try { 73 Class.forName(driver);// 載入驅動 74 conn = DriverManager.getConnection(url, user, pass);// 獲得連接對象 75 76 } catch (ClassNotFoundException | SQLException e) { 77 // TODO Auto-generated catch block 78 e.printStackTrace(); 79 } 80 } 81 82 public static void getPst(String sql) { 83 try { 84 pst = conn.prepareStatement(sql);// 預處理sql 85 } catch (SQLException e) { 86 // TODO Auto-generated catch block 87 e.printStackTrace(); 88 } 89 } 90 91 public static void closeAll() { 92 try { 93 pst.close(); 94 conn.close(); 95 } catch (SQLException e) { 96 // TODO Auto-generated catch block 97 e.printStackTrace(); 98 } 99 100 } 101 }
*/