##JDBC(Java DataBase Connection)java資料庫連接配接
JDBC思維導圖
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2YfNWawNCM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TPB5UMnRkT1kkeNBDOsJGcohVYsR2MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLzATNxITNyQTM1AjNwAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
###JDBC是什麼?
JDBC是一組連接配接資料庫的接口(由各大資料庫廠商實作),它是java通路資料庫的标準規範。
想要使用指定的資料庫:如mysql,就需要導入相應的 mysql jar包.
###JDBC的實作步驟
1.導入驅動jar包
2.注冊驅動
3.擷取資料庫連接配接對象
4.定義sql語句
5.擷取執行sql語句對象
6.執行sql,接受傳回的結果
7.處理結果
8.釋放資源
###JDBC的核心
1、DriverManager類(管理一組 JDBC 驅動程式的基本服務。)
1.注冊驅動:告訴程式應該使用哪一個資料庫驅動jar包
2.擷取資料庫連接配接
2、Connection接口 (資料庫連接配接對象)
1.擷取執行sql的對象
2.管理事務
3、Statement接口 (執行sql語句的對象)
1.用于将Sql語句發送給資料庫伺服器
4、PreparedStatemen接口 (為了解決sql注入問題,是Statement的子接口)
5、ResultSet接口 (結果集對象,封裝結果的對象)
1.将從資料庫拿到的資料進行封裝,友善擷取
資料庫語句
create database test;
USE test;
CREATE TABLE student
(
id INT,
st_name VARCHAR(20)
);
INSERT INTO student VALUES(1,'蛙蛙');
JDBC的實作代碼
public class DemoJDBC {
public static void main(String[] args) throws Exception {
/*
* 1.導入驅動jar包
2.注冊驅動
3.擷取資料庫連接配接對象
4.定義sql語句
5.擷取執行sql語句對象
6.執行sql,接受傳回的結果
7.處理結果
8.釋放資源
* */
//1.導入驅動jar包
// 2.注冊驅動
Class.forName("com.mysql.jdbc.Driver");//有異常,抛出異常
// 3.擷取資料庫連接配接對象,後面的兩個root,第一個為mysql的使用者,第二個為mysql的密碼
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");
//4.定義sql語句
String sql = "select * from student";
//5.擷取執行sql語句對象
Statement state = conn.createStatement();
// 6.執行sql,接受傳回的結果
boolean execute = state.execute(sql);
//7.處理結果
System.out.println(execute);
ResultSet resultSet = state.getResultSet();
while (resultSet.next()){ //判斷目前行是否為最後一行,如果是則傳回false,如果不是則傳回ture
//擷取對應行對應的資料
int anInt = resultSet.getInt(1); //第一列資料為int類型資料
String string = resultSet.getString(2);//第二列資料為字元型資料
// Date User = resultSet.getDate(1);
System.out.println("id:"+anInt+ " st_name:"+string );
}
//8、釋放資源
state.close();
conn.close();
}
}
運作截圖