JDBC(1)
一、JDBC簡介。
JDBC(Java DataBase Connectivity,java數據庫連接)是一種用於執行SQL語句的Java API,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。JDBC提供了一種基準,據此可以構建更高級的工具和接口,使數據庫開發人員能夠編寫數據庫應用程序。
Java技術連接任何數據庫的性能都是很高的,但是只有一個數據庫性能是最差的:SQL Sever。
在國內使用最多的幾種數據庫:Oracle、MySQL、MongoDB。
二、使用JDBC技術連接Oracle數據庫。
在Java之中,所有數據庫操作的類和接口都保存在了java.sql包裏面,核心組成如下:
(1) 一個類:DriverManag類;
(2) 四個接口:Connection、Statement、ResultSet、PreparedSta。
所有的JDBC連接數據庫的操作流程都是固定的,按照如下幾步完成:
(1)加載數據庫的驅動程序(向容器加載);
(2)進行數據庫連接(通過DriverManager類完成, Connection 表示連接);
(3)進行數據的CRUD(Statement、PreparedStatement,ResultSet);
(4)關閉數據庫的連接;
1.加載驅動程序
要使用各個不同生產商提供的數據庫驅動程序,需要配置其CLASSPATH,而後設置驅動程序的
類名稱(包.類)。
驅動程序:Oracle安裝路徑E:\app\chenxin\product\11.2.0\dbhome_3\jdbc\lib\ojdbc6.jar;
-|Oracle 驅動程序類:oracle.jdbc.driver.OracleDriver。
-|加載類使用:Class.forName("oracle.jdbc.driver.OracleDriver");
2.連接數據庫
如果要想連接數據庫要提供如下的幾個信息(前提:數據庫服務打開):
-|數據庫連接地址:jdbc:oracle:連接方式:主機名稱:端口名稱:數據庫的SID
例:要連接本機的mldn數據庫:jdbc:oracle:thin:@localhost:1521:mldn
-|數據庫用戶名:scott
-|數據庫密碼:tiger
要連接數據庫還需依靠DriverManager類完成,在此類定義有如下的方法:
-|連接數據庫:
static Connection |
throws SQLException; Attempts to establish a connection to the given database URL. |
此方法接收數據庫連接地址,用戶名,用戶密碼,返回一個Connection對象.
在JDBC裏面,每一個數據庫連接都要求使用一個Connection對象進行封裝,所以只要有一個Connection對象,就表示要連接一次數據庫。
3.數據的操作(此處省略)
4.關閉數據庫
Connection接口提供有close()方法:
void |
close()throws SQLException
Releases this Connection object‘s database and JDBC resources immediately instead of waiting for them to be automatically released.
|
import java.sql.Connection; import java.sql.DriverManager; public class TestDemo { private static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver"; private static final String DBURL = "jdbc:oracle:thin:@localhost:1521:mldn"; private static final String USER = "scott"; private static final String PASSWORD = "tiger"; public static void main(String[] args) throws Exception { //第一步:加載數據庫驅動程序,此時不需要實例化,因為會由容器自己負責管理 Class.forName(DBDRIVER); //第二步:連接數據庫 Connection conn = DriverManager.getConnection(DBURL, USER, PASSWORD); System.out.println(conn); //第四步:關閉數據庫 conn.close(); } }
三、總結:
1.不管連接何種關系型數據庫,都一定通過DriverManager進行數據庫連接;
2.每一個Connection接口對象就表示一個數據庫連接,程序最後必須關閉數據庫連接;
JDBC(1)