溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在Java中使用JDBC連接數(shù)據(jù)庫(kù)

發(fā)布時(shí)間:2021-03-01 17:00:43 來(lái)源:億速云 閱讀:205 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

本篇文章給大家分享的是有關(guān)怎么在Java中使用JDBC連接數(shù)據(jù)庫(kù),小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

一、使用JDBC連接數(shù)據(jù)庫(kù)

1.使用JDBC-ODBC橋驅(qū)動(dòng)程序連接數(shù)據(jù)庫(kù)

基本步驟:
(1)加載并注冊(cè)數(shù)據(jù)庫(kù)驅(qū)動(dòng)
(2)通過(guò)DriverManager獲取數(shù)據(jù)庫(kù)連接
(3)通過(guò)Connection對(duì)象獲取Statement對(duì)象
(4)使用Statement接口執(zhí)行SQL語(yǔ)句
(5)操作ResultSet結(jié)果集
(6)關(guān)閉連接,釋放資源

2.下面進(jìn)行代碼演示

1.注冊(cè)數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序的語(yǔ)法格式如下:

DriverManager.registerDriver(Driver driver)

或者

Class.forName("DriverName");

2.創(chuàng)建數(shù)據(jù)庫(kù)連接

String url = "jdbc:odbc:student";
//student是在數(shù)據(jù)源管理器中創(chuàng)建的數(shù)據(jù)源名字
Connection con = DriverManager.getConnection(url);
//一下語(yǔ)句是采用了一種無(wú)數(shù)據(jù)源連接數(shù)據(jù)庫(kù)的方式
con=DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver(*.mdb)};
DBQ=d:\\xsgl.mdb")

3.獲取Statement對(duì)象
可見(jiàn)之前連載的三種成員方法創(chuàng)建Statement對(duì)象、PreparedStatement對(duì)象、CallableStatement對(duì)象

4.執(zhí)行SQL語(yǔ)句
所有的Statement都有以下三種執(zhí)行SQL語(yǔ)句的方法
(1)execute():可以執(zhí)行任何SQL語(yǔ)句
(2)executeQuery():執(zhí)行查詢語(yǔ)句,返回ResultSet對(duì)象
(3)executeUpate():執(zhí)行增刪改操作

5.獲得結(jié)果結(jié)合ResultSet對(duì)象,在進(jìn)行一系列操作。
舉例:

package com.bjpowernode.java_learning;

import java.sql.Statement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;

public class D134_1_JDBCConnection {
	public static void main(String[] args) {
		Statement stmt = null;
		ResultSet rs = null;
		Connection conn = null;
		
		try {
			//1.注冊(cè)數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序
			Class.forName("com.hxtt.sql.access.AccessDriver");
			//2.通過(guò)DriverManager獲取數(shù)據(jù)庫(kù)連接
			conn = DriverManager.getConnection("jbdc:Access:///e:xsgl.mdb");
			//3.通過(guò)Connection對(duì)象獲取Statement對(duì)象
			stmt = conn.createStatement();
			//4.使用Statement執(zhí)行SQL語(yǔ)句
			String sql = "select * from studentInfo";
			rs = stmt.executeQuery(sql);
			//5.操作ResultSet結(jié)果集
			System.out.println("studentID | studentName | studentSEX");
			while(rs.next()) {
				int id = rs.getInt("studentID");//通過(guò)列名獲取指定字段的值
				String name = rs.getString("studentName");
				String psw = rs.getString("studentSEX");
				System.out.println(id + " | " + name + " | " + psw);
			}
		}catch(Exception e) {
			e.printStackTrace();
		}finally {
			//6.回收數(shù)據(jù)庫(kù)資源
			if (rs != null) {
				try {
					rs.close();
				}catch(SQLException e) {
					e.printStackTrace();
				}
				rs = null;
			}
			if(stmt != null) {
				try {
					stmt.close();
				}catch(SQLException e) {
					e.printStackTrace();
				}
				stmt = null;
			}
			if (conn != null) {
				try {
					conn.close();
				}catch(SQLException e) {
					e.printStackTrace();
				}
				conn = null;
			}
		}
	}
}

3.注意點(diǎn)

  • JDK1.7以后的版本不再包含Access橋接驅(qū)動(dòng)程序,因此不再支持JDBC-ODBC橋接方式,需要下載Access驅(qū)動(dòng)程序的jar包(Access_JDBC30.jar),而JDK1.1到JDK1.6都自帶jar包,不需要下載。

  • 下載完成后把Access_JDBC30.jar包放到JDK的lib文件夾里,之后修改環(huán)境變量CLASSPATH,在其中加上這個(gè)jar包,路徑為jar包的絕對(duì)路徑,例如:C:\ProgramFiles\Java\jre1.8.0_65\lib\Access_JDBC30.jar。如果CLASSPATH中已經(jīng)有了其他的值,最后添加該包就可以了。然后再工程里面設(shè)置好,至此就可以正常連接數(shù)據(jù)庫(kù)了,但是驅(qū)動(dòng)的名稱就不是sun.jdbc.odbc.JdbcOdbcDriver,而是com.hxtt.sql.access.AccessDriver,數(shù)據(jù)庫(kù)路徑也可以采用直連,URL可以設(shè)置為jdbc:Access:///d:MYDB.accdb。

以上就是怎么在Java中使用JDBC連接數(shù)據(jù)庫(kù),小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI