JDBC數(shù)據(jù)庫(kù)連接步驟解析
要想在編程語(yǔ)言中操作數(shù)據(jù)庫(kù),就必須與數(shù)據(jù)庫(kù)建立連接。
建立JDBC連接的步驟如下:
導(dǎo)入JDBC包:使用Java語(yǔ)言的import語(yǔ)句在Java代碼開頭位置導(dǎo)入所需的類。
注冊(cè)JDBC驅(qū)動(dòng)程序:使JVM將所需的驅(qū)動(dòng)程序?qū)崿F(xiàn)加載到內(nèi)存中,從而可以滿足JDBC請(qǐng)求。
數(shù)據(jù)庫(kù)URL配置:創(chuàng)建一個(gè)正確格式化的地址,指向要連接到的數(shù)據(jù)庫(kù)。
創(chuàng)建連接對(duì)象:調(diào)用DriverManager對(duì)象的getConnection()方法來建立實(shí)際的數(shù)據(jù)庫(kù)連接。
一、導(dǎo)入包
mysql驅(qū)動(dòng)jar:http://central.maven.org/maven2/mysql/mysql-connector-java/
oracle驅(qū)動(dòng)jar:https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html
要使用標(biāo)準(zhǔn)的JDBC包java.sql.*。
二、注冊(cè)JDBC驅(qū)動(dòng)程序
在使用程序之前,必須先注冊(cè)該驅(qū)動(dòng)程序。
注冊(cè)驅(qū)動(dòng)程序是將數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序的類文件加載到內(nèi)存中的過程。
只需在程序中一次注冊(cè)就可以??梢酝ㄟ^兩種方式之一來注冊(cè)驅(qū)動(dòng)程序。
1. Class.forName()
推薦使用的方法,因?yàn)樗跪?qū)動(dòng)程序注冊(cè)可配置和便攜。
Class.forName("oracle.jdbc.driver.OracleDriver"); //oracle
Class.forName("com.mysql.jdbc.Driver"); //mysql
2. DriverManager.registerDriver()
使用靜態(tài)DriverManager.registerDriver()方法來注冊(cè)驅(qū)動(dòng)程序。
如果使用的是非JDK兼容的JVM(如Microsoft提供的),則應(yīng)使用registerDriver()方法。
Driver myDriver = new oracle.jdbc.driver.OracleDriver(); //oracle Driver myDriver = new com.mysql.jdbc.Driver(); //mysql DriverManager.registerDriver( myDriver );
三、數(shù)據(jù)庫(kù)URL
加載驅(qū)動(dòng)程序后,可以使用DriverManager.getConnection()方法建立連接。
三個(gè)重載的DriverManager.getConnection()方法:
這里每個(gè)格式都需要一個(gè)數(shù)據(jù)庫(kù)URL。 數(shù)據(jù)庫(kù)URL是指向數(shù)據(jù)庫(kù)的地址。
(1)MySQL
JDBC驅(qū)動(dòng)程序名稱:com.mysql.jdbc.Driver
URL格式:jdbc:mysql://hostname/databaseName
(2)Oracle
JDBC驅(qū)動(dòng)程序名稱:oracle.jdbc.driver.OracleDriver
URL格式:jdbc:oracle:thin:@hostname:portNumber:databaseName
(3)PostgreSQL
JDBC驅(qū)動(dòng)程序名稱:org.postgresql.Driver
URL格式:jdbc:postgresql://hostname:port/dbname
(4)DB2
JDBC驅(qū)動(dòng)程序名稱:com.ibm.db2.jdbc.net.DB2Driver
URL格式:jdbc:db2:hostname:port Number/databaseName
(5)Sybase
JDBC驅(qū)動(dòng)程序名稱:com.sybase.jdbc.SybDriver
URL格式:jdbc:sybase:Tds:hostname: portNumber/databaseName
四、創(chuàng)建連接對(duì)象
DriverManager.getConnection();
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java實(shí)現(xiàn)輕量型http代理服務(wù)器示例
這篇文章主要介紹了java實(shí)現(xiàn)輕量型http代理服務(wù)器示例,需要的朋友可以參考下2014-04-04
Java實(shí)現(xiàn)簡(jiǎn)易界面通訊錄
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)簡(jiǎn)易界面通訊錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
SpringBoot基于RabbitMQ實(shí)現(xiàn)消息延遲隊(duì)列方案及使用場(chǎng)景
在很多的業(yè)務(wù)場(chǎng)景中,延時(shí)隊(duì)列可以實(shí)現(xiàn)很多功能,此類業(yè)務(wù)中,一般上是非實(shí)時(shí)的,需要延遲處理的,需要進(jìn)行重試補(bǔ)償?shù)?這篇文章主要介紹了SpringBoot基于RabbitMQ實(shí)現(xiàn)消息延遲隊(duì)列方案及使用場(chǎng)景,需要的朋友可以參考下2024-04-04
Spring中Bean有關(guān)NullPointerException異常的原因分析
在Spring中使用@Autowired注解注入的bean不能在靜態(tài)上下文中訪問,否則會(huì)導(dǎo)致NullPointerException,解決方法包括避免在靜態(tài)方法中使用注入的bean,或者使用Spring的ApplicationContext來獲取bean,但后者不推薦2024-12-12
Java實(shí)現(xiàn)PDF轉(zhuǎn)HTML/Word/Excel/PPT/PNG的示例代碼
這篇文章主要為大家介紹了如何利用Java語(yǔ)言是PDF轉(zhuǎn)HTML、Word、Excel、PPT和PNG功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-05-05
簡(jiǎn)單說說JVM堆區(qū)的相關(guān)知識(shí)
今天給大家?guī)淼氖顷P(guān)于Java虛擬機(jī)的相關(guān)知識(shí),文章圍繞著JVM堆區(qū)展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06

