JDBC API允許用戶訪問任何形式的表格數據,尤其是存儲在關係數據庫中的數據。
執行流程:
1)連接數據源,如:數據庫
2)爲數據庫傳遞查詢和更新指令
3)處理數據庫響應並返回的結果。
JDBC英文名爲:Java Data Base Connectivity(Java數據庫連接),官方解釋它是Java編程語言和廣泛地數據庫之間獨立於數據庫的連接標準的Api.
工作原理圖:
常用接口
提供的接口包括:JAVA Api:提供對JDBC的管理連接;Java Driver Api:支持JDBC管理到驅動器連接。
DriverManager:這個類管理數據庫驅動程序的列表,查看加載的驅動是否符合JAVA Driver Api的規範。
Connection:與數據庫中的所有通信是通過唯一的連接對象。
Statement:把創建的sql對象,轉而存儲到數據庫當中。
ResultSet:它是一個迭代器,用戶檢索查詢數據。
操作流程圖
JDBC編程步驟
加載驅動程序;
Class.forName(driverClass) //加載MySql驅動 Class.forName("com.mysql.jdbc.Driver") //加載Oracle驅動 Class.forName("oracle.jdbc.driver.OracleDriver")
獲得數據庫連接:
DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/BullMan", "root", "root");
創建Statement/PreparedStatement對象:
conn.createStatement();
conn.prepareStatement(sql);
完整實例
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class DbUtil { public static final String URL = "jdbc:mysql://localhost:3306/imooc"; public static final String USER = "liulx"; public static final String PASSWORD = "123456"; public static void main(String[] args) throws Exception { //1.加載驅動程序 Class.forName("com.mysql.jdbc.Driver"); //2. 獲得數據庫連接 Connection conn = DriverManager.getConnection(URL, USER, PASSWORD); //3.操作數據庫,實現增刪改查 Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT user_name, age FROM imooc_goddess"); //如果有數據,rs.next()返回true while(rs.next()){ System.out.println(rs.getString("user_name")+" 年齡:"+rs.getInt("age")); } } }