本章節以及後續章節使用的是mysql-connector-java-5.1.40和jdk1.7版本java
如下代碼就太熟悉了,不少同窗閉着眼睛都能寫出來。就是一段鏈接mysql數據庫的代碼。mysql
public static void main(String[] args) throws Exception{ Class.forName("com.mysql.jdbc.Driver") ; Connection con = DriverManager.getConnection("jdbc:mysql://192.168.166.30:3359/pop_serviceno?allowMultiQueries=true" , "pop_crm_rw","pop_crm_rw3ed" ) ; String sql = "SELECT * from wireless_dynamic_113 where activity_name = ?"; PreparedStatement pst = con.prepareStatement(sql); int index = 1; pst.setObject(index,"www1233455444"); ResultSet resultSet = pst.executeQuery(); while (resultSet.next()){ String activity_name = resultSet.getString("activity_name"); System.out.println("名稱:"+activity_name); } }
本節做爲一個引子,很是簡單,首先使用Class.forName方法註冊了一個mysql的driver,而後使用DriverManager獲取數據庫的鏈接,獲取鏈接之後,使用PreparedStatement 的executeQuery方法執行傳遞進去的sql字符串,而後使用ResultSet進行接收執行結果,遍歷之後取出須要的值。程序員
這段看似簡單的代碼,到底作什麼事情,Class.forName是作什麼的,是如何鏈接到相應的數據庫的,而後又是如何把sql語句發送到數據庫進行執行的呢。這些東西對於客戶端程序員來講也許歷來沒有探究過。本身這段時間忽然有興趣對這部份內容研究一下,看看裏面有什麼魔法,接下來的章節會逐步的去跟這些內容的源代碼,一探究竟。sql