MySQL實(shí)現(xiàn)JDBC詳細(xì)步驟
JDBC基礎(chǔ)入門
概念
JDBC(Java DataBase Connectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的Java API,可以為多種關(guān)系型數(shù)據(jù)庫提供統(tǒng)一訪問,它是由一組用Java語言編寫的類和接口組成的。
JDBC 規(guī)范定義接口,具體的實(shí)現(xiàn)由各大數(shù)據(jù)庫廠商來實(shí)現(xiàn)。
JDBC 是 Java 訪問數(shù)據(jù)庫的標(biāo)準(zhǔn)規(guī)范,真正怎么操作數(shù)據(jù)庫還需要具體的實(shí)現(xiàn)類,也就是數(shù)據(jù)庫驅(qū)動(dòng)。每個(gè)數(shù)據(jù)庫廠商根據(jù)自家數(shù)據(jù)庫的通信格式編寫好自己數(shù)據(jù)庫的驅(qū)動(dòng)。所以我們只需要會(huì)調(diào)用 JDBC 接口中的方法即可,數(shù)據(jù)庫驅(qū)動(dòng)由數(shù)據(jù)庫廠商提供。
本質(zhì)
其實(shí)就是java官方提供的一套規(guī)范(接口)。用于幫助開發(fā)人員快速實(shí)現(xiàn)不同關(guān)系型數(shù)據(jù)庫的連接!
JDBC的7個(gè)步驟
(1)導(dǎo)入jar包
(2)注冊驅(qū)動(dòng)
Class.forName("com.mysql.cj.jdbc.Driver");注意:如果使用較高版本的MySQL,必須使用 com.mysql.cj.jdbc.Driver 的方式,否則會(huì)報(bào)錯(cuò)!
Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
如果是低版本的可以使用 com.mysql.jdbc.Driver
如果還是報(bào)錯(cuò),可以使用在url上面加入時(shí)區(qū)!
url=jdbc:mysql://localhost:3306/數(shù)據(jù)庫名?serverTimezone=UTC
(3)獲取連接
String url = "jdbc:mysql://localhost:3306/db1"; Connection con = DriverManager.getConnection(url,"root","888888");
(4)獲取執(zhí)行者對象
Statement stat = con.createStatement();
(5)執(zhí)行sql語句,并接收返回結(jié)果
String sql = "SELECT * FROM user"; ResultSet rs = stat.executeQuery(sql);
(6)處理結(jié)果
while(rs.next()) {
System.out.println( rs.getInt("id")
+ "\t" + rs.getString("name"));
}(7)釋放資源
con.close(); stat.close(); rs.close();
JDBC入門示例代碼
Connection對象中的用戶名,數(shù)據(jù)庫名,密碼改成你自己的哦!
public class jdbc_demo01 {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
// 1.導(dǎo)入jar包
// 2.注冊驅(qū)動(dòng)
Class.forName("com.mysql.cj.jdbc.Driver");
// 3.獲取連接
String url = "jdbc:mysql://localhost:3306/db1";
Connection con = DriverManager.getConnection(url,"root","888888");
// 4.獲取執(zhí)行者對象
Statement stat = con.createStatement();
// 5.執(zhí)行sql語句,并且接收結(jié)果
String sql = "SELECT * FROM product";
ResultSet rs = stat.executeQuery(sql);
// 6.處理結(jié)果
while(rs.next()) {
System.out.println( rs.getInt("id") + "\t"
+ rs.getString("name") + "\t"
+ rs.getInt("price") + "\t"
+ rs.getString("brand") + "\t"
+ rs.getInt("stock")
);
}
// 7。釋放資源
con.close();
stat.close();
rs.close();
}
}結(jié)果如下:

到此這篇關(guān)于MySQL實(shí)現(xiàn)JDBC詳細(xì)講解的文章就介紹到這了,更多相關(guān)mysql JDBC內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL數(shù)據(jù)庫INNODB表損壞修復(fù)處理過程分享
突然收到MySQL報(bào)警,從庫的數(shù)據(jù)庫掛了,一直在不停的重啟,打開錯(cuò)誤日志,發(fā)現(xiàn)有張表壞了。innodb表損壞不能通過repair table 等修復(fù)myisam的命令操作?,F(xiàn)在記錄下解決過程2013-08-08
修改MySQL所有表的編碼或修改某個(gè)字段的編碼步驟詳解
這篇文章主要給大家介紹了關(guān)于修改MySQL所有表的編碼或修改某個(gè)字段編碼的相關(guān)資料,在進(jìn)行數(shù)據(jù)庫編碼更改之前,需要先確定目標(biāo)編碼格式,常見的編碼格式有UTF-8、GBK等,需要的朋友可以參考下2023-12-12
MySql 字符串中提取數(shù)字的實(shí)現(xiàn)示例
在MySQL中,有時(shí)需要從字符串中提取數(shù)字,本文就來介紹一下MySql 字符串中提取數(shù)字的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09
在講MySQL的Join語法前還是先回顧一下聯(lián)結(jié)的語法,呵呵,其實(shí)連我自己都忘得差不多了,那就大家一起溫習(xí)吧,這里我有個(gè)比較簡便的記憶方法,內(nèi)外聯(lián)結(jié)的區(qū)別是內(nèi)聯(lián)結(jié)將去除所有不符合條件的記錄,而外聯(lián)結(jié)則保留其中部分。外左聯(lián)結(jié)與外右聯(lián)結(jié)的區(qū)別在于如果用A左聯(lián)結(jié)B則A中所有記錄都會(huì)保留在結(jié)果中,此時(shí)B中只有符合聯(lián)結(jié)條件的記錄,而右聯(lián)結(jié)相反,這樣也就不會(huì)混淆了。2014-05-05

