JDBC以反射機制加載類注冊驅(qū)動連接MySQL
package test.jdbc;
//JDBC注冊驅(qū)動的另一種方式:(這種方式常用)
/*
如何讓一個類的靜態(tài)代碼塊執(zhí)行?
所以直接反射此處要學習到的這個類,class文件。這個類就會被加載進JVM,靜態(tài)代碼塊在類加載時執(zhí)行,所以就注冊了
就是利用反射來加載Driver類,利用類中的靜態(tài)代碼塊實現(xiàn)對驅(qū)動的注冊
那么如何加載這個類?
非常簡單:反射機制!
Class.forName("com.mysql.jdbc.Driver");Class.forName(類名); 這個類的執(zhí)行會導致后面類的加載!
//1 注冊驅(qū)動
Class.forName("com.mysql.jdbc.Driver");//這里我們不需要接收返回值,因為我們主要需要的是類加載這個動作,且只需要這個動作!。
//因為雙引號括起來是字符串,字符串可以寫到配置文件當中,
//這種方法常用是因為字符串可以寫到文件中!
//但是這樣不行,因為Class這個類會有異常,我們需要使用try和catch語句塊來環(huán)繞
package test.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
//JDBC注冊驅(qū)動的另一種方式:(這種方式常用)
/*
如何讓一個類的靜態(tài)代碼塊執(zhí)行?
所以直接反射此處要學習到的這個類,class文件。這個類就會被加載進JVM,靜態(tài)代碼塊在類加載時執(zhí)行,所以就注冊了
就是利用反射來加載Driver類,利用類中的靜態(tài)代碼塊實現(xiàn)對驅(qū)動的注冊
那么如何加載這個類?
非常簡單:反射機制! Class.forName("com.mysql.jdbc.Driver");
Class.forName(類名); 這個類的執(zhí)行會導致后面類的加載!
*/
public class JDBC3 {
public static void main(String[] args) {
//1 注冊驅(qū)動
//這里我們不需要接收返回值,因為我們主要需要的是類加載這個動作,且只需要這個動作!。
//因為雙引號括起來是字符串,字符串可以寫到配置文件當中,
//這種方法常用是因為字符串可以寫到文件中!
try {
Class.forName("com.mysql.jdbc.Driver");
//2 獲取連接
Connection connection = DriverManager.getConnection("", "root", "rota");
//
System.out.println(connection);
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
501 Command "HELO" requires an argument問題的解決方法
換一個windows服務器,發(fā)現(xiàn)就沒這樣的問題,僅在一臺Linux服務器上可以重現(xiàn),直觀感覺就是這臺Linux服務器某些配置有問題2013-08-08
微服務?Spring?Boot?整合?Redis?BitMap?實現(xiàn)?簽到與統(tǒng)計功能
這篇文章主要介紹了微服務?Spring?Boot?整合?Redis?BitMap?實現(xiàn)?簽到與統(tǒng)計功能,文章簡單介紹了Redis BitMap 基本用法結合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2023-01-01
java開發(fā)RocketMQ生產(chǎn)者高可用示例詳解
這篇文章主要為大家介紹了java開發(fā)RocketMQ生產(chǎn)者高可用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-08-08
String轉(zhuǎn)BigDecimal,BigDecimal常用操作,以及避免踩坑記錄
這篇文章主要介紹了String轉(zhuǎn)BigDecimal,BigDecimal常用操作,以及避免踩坑記錄,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07
AsyncHttpClient的ConnectionSemaphore方法源碼流程解讀
這篇文章主要為大家介紹了AsyncHttpClient的ConnectionSemaphore方法源碼流程解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12
SpringBoot利用ThreadPoolTaskExecutor批量插入百萬級數(shù)據(jù)的具體實現(xiàn)
ThreadPoolTaskExecutor是Spring提供的任務執(zhí)行器實現(xiàn)之一,允許開發(fā)者配置線程池參數(shù)以適應不同的應用場景,創(chuàng)建 ThreadPoolTaskExecutor 實例并設置核心和最大線程數(shù)等屬性可以優(yōu)化性能,本文介紹了SpringBoot利用ThreadPoolTaskExecutor批量插入百萬級數(shù)據(jù)的具體實現(xiàn)2024-12-12

