當前位置:首頁 » 數據倉庫 » java連接資料庫的過程
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

java連接資料庫的過程

發布時間: 2023-02-08 09:27:33

A. java連接資料庫的詳細步驟

JDBC:
java database connective

主要作用:
連接程序使用的資料庫

使用步驟:
1. 引入外部jar包(mysql提供的Java使用者的連接器)
工程上右鍵-->build path --> config buildpath --> liberies
-->add external jars
-->選擇對應的mysql-connectorXXXXXX.jar
看到工程上有jar文件則證明引入成功

2. 編程:
(1):注冊資料庫驅動
Class.forName("com.mysql.jdbc.Driver");
(2):創建連接
String url = "jdbc:mysql://192.168.0.243:3306/test";
String userName = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, userName, password);

(3):創建SQL信使
Statement stmt = conn.createStatement();

(4):執行SQL語句
int i = stmt.executeUpdate("insert into employee values ('10070004', '張三豐', 1, '2005-05-23', 0, 1001, '2007-02-02', 200)");
(5):異常捕獲、關閉資源

B. java如何連接資料庫

JDBC(Java DataBase Connectivity)是Java資料庫連接API。JDBC能完成與一個資料庫建立連接,然後向資料庫發送SQL語句,再處理資料庫返回的結果。

JDBC在設計上和ODBC相似。JDBC和資料庫建立連接的一種方式是首先建立起一個JDBC-ODBC橋接器。

首先安裝office2000,就有了Access2000,啟動Access,建立新資料庫mess.mdb,建立包含兩個文本型欄位name和sex的表,表名為member,隨便錄入一些字元串到member表中,保存在任意目錄下,比如說C盤下。然後打開控制面板 -> 管理工具 -> 數據源 (ODBC),選擇"系統DSN",也可以選擇"用戶DSN"選項卡,系統的DSN對每個用戶都適用可避免調試時出現的許可權問題,單擊「添加」,

點擊"完成",彈出的對話框里將"數據源名"一項設為你喜歡的名字,比如redsun。點"選擇",找到"C:\mess.mdb"文件,如此一個ODBC數據源就配置好了。

要連接該數據源,也就是連接資料庫,首先要建立一個JDBC-ODBC橋接器,上面已經說過了,其方法是:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Class 是Java.lang包中的一個類,通過調用它的靜態方法forName就可以建立橋接器。但建立橋接器時可能發生異常,這是我們所不想見到的,因此要捕獲這個異常:

try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){異常捕獲}

然後就是連接資料庫了,這里要用到java.sql包中的Connection類聲明一個對象,再用類DriverManager調用它的靜態方法getConnection創建這個連接。

Connection con=DriverManager.getConnection("jdbc:odbc:數據源名字","數據源用戶名","數據源密碼");

為防止連接出現異常,這里也要有個異常的處理,具體看代碼:

=========access.java============

程序代碼
import java.sql.*;
public class access{
public static void main(String args[]){
Connection con;
Statement sql; //聲明Statement對象
ResultSet rs;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){
System.out.println(""+e);
}
try{
con=DriverManager.getConnection("jdbc:odbc:redsun","","");
sql=con.createStatement();
rs=sql.executeQuery("Select * FROM member");
while(rs.next()){
String name=rs.getString(1); //獲得資料庫第一列
String sex=rs.getString(2);
System.out.println("姓名:"+name); //輸出信息
System.out.println("性別:"+sex);
}
con.close();
}
catch(SQLException el){}
}
}

編繹access.java, 然後在命令提示符中先切換到編繹後的access.class的目錄,執行:

java access 回車

以上這個例子只是簡單的連接資料庫,並靜態游標方式顯示數據,更新、刪除和添加資料庫以前學過sql的很容易理解,語法為:

String xx="sql語句";

Statement對象.executeUpdate(xx);

C. 如何實現java與資料庫的連接

JDBC連接資料庫
•創建一個以JDBC連接資料庫的程序,包含7個步驟:
1、載入JDBC驅動程序:
在連接資料庫之前,首先要載入想要連接的資料庫的驅動到JVM(Java虛擬機),
這通過java.lang.Class類的靜態方法forName(String className)實現。
例如:
try{
//載入MySql的驅動類
Class.forName("com.mysql.jdbc.Driver") ;
}catch(ClassNotFoundException e){
System.out.println("找不到驅動程序類 ,載入驅動失敗!");
e.printStackTrace() ;
}
成功載入後,會將Driver類的實例注冊到DriverManager類中。
2、提供JDBC連接的URL
•連接URL定義了連接資料庫時的協議、子協議、數據源標識。
•書寫形式:協議:子協議:數據源標識
協議:在JDBC中總是以jdbc開始
子協議:是橋連接的驅動程序或是資料庫管理系統名稱。
數據源標識:標記找到資料庫來源的地址與連接埠。
例如:(MySql的連接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字元集。如果characterEncoding設置為
gb2312或GBK,本參數必須設置為true 。characterEncoding=gbk:字元編碼方式。
3、創建資料庫的連接
•要連接資料庫,需要向java.sql.DriverManager請求並獲得Connection對象,
該對象就代表一個資料庫的連接。
•使用DriverManager的getConnectin(String url , String username ,
String password )方法傳入指定的欲連接的資料庫的路徑、資料庫的用戶名和
密碼來獲得。
例如:
//連接MySql資料庫,用戶名和密碼都是root
String url = "jdbc:mysql://localhost:3306/test" ;
String username = "root" ;
String password = "root" ;
try{
Connection con =
DriverManager.getConnection(url , username , password ) ;
}catch(SQLException se){
System.out.println("資料庫連接失敗!");
se.printStackTrace() ;
}
4、創建一個Statement
•要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3
種類型:
1、執行靜態SQL語句。通常通過Statement實例實現。
2、執行動態SQL語句。通常通過PreparedStatement實例實現。
3、執行資料庫存儲過程。通常通過CallableStatement實例實現。
具體的實現方式:
Statement stmt = con.createStatement() ;
PreparedStatement pstmt = con.prepareStatement(sql) ;
CallableStatement cstmt =
con.prepareCall("{CALL demoSp(? , ?)}") ;
5、執行SQL語句
Statement介面提供了三種執行SQL語句的方法:executeQuery 、executeUpdate
和execute
1、ResultSet executeQuery(String sqlString):執行查詢資料庫的SQL語句
,返回一個結果集(ResultSet)對象。
2、int executeUpdate(String sqlString):用於執行INSERT、UPDATE或
DELETE語句以及SQL DDL語句,如:CREATE TABLE和DROP TABLE等
3、execute(sqlString):用於執行返回多個結果集、多個更新計數或二者組合的
語句。
具體實現的代碼:
ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;
int rows = stmt.executeUpdate("INSERT INTO ...") ;
boolean flag = stmt.execute(String sql) ;
6、處理結果
兩種情況:
1、執行更新返回的是本次操作影響到的記錄數。
2、執行查詢返回的結果是一個ResultSet對象。
• ResultSet包含符合SQL語句中條件的所有行,並且它通過一套get方法提供了對這些
行中數據的訪問
• 使用結果集(ResultSet)對象的訪問方法獲取數據:
while(rs.next()){
String name = rs.getString("name") ;
String pass = rs.getString(1) ; // 此方法比較高效
}
(列是從左到右編號的,並且從列1開始)
7、關閉JDBC對象
操作完成以後要把所有使用的JDBC對象全都關閉,以釋放JDBC資源,關閉順序和聲
明順序相反:
1、關閉記錄集
2、關閉聲明
3、關閉連接對象
if(rs != null){ // 關閉記錄集
try{
rs.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(stmt != null){ // 關閉聲明
try{
stmt.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(conn != null){ // 關閉連接對象
try{
conn.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}

D. Java中如何與資料庫建立連接

導入java.sql包 x0dx0a一、載入要連接資料庫的驅動程序 x0dx0a//Jdbc-Odbc橋 和 Microsoft Access 資料庫 x0dx0aClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); x0dx0a// SQL Server 驅動程序: x0dx0aClass.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); x0dx0a註:Class.forName()方法將給定的類載入到JVM,如果系統中不存在給定的類,則會引發異常 x0dx0a二、通過驅動程序管理器得到連接實例 x0dx0aConnection conn=null; x0dx0a//1. x0dx0a//1.1建立數據源 x0dx0aconn=DriverManager.getConnection("jdbc:odbc:MyDataSource"); //MyDataSource是數據源名稱 x0dx0a//1-2、不建立數據源 x0dx0aconn=DriverManager.getConnection("jdbc:odbc:;Driver=Microsoft Access Driver (*.mdb);DBQ=C:\\VBTest.mdb"); x0dx0a//2.SQL Server x0dx0aconn=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=mydb","sa",""); x0dx0ax0dx0a註:DriverManager類跟蹤已注冊的驅動程序,通過getConnection(URL)方法, 找到一個能夠連接至URL中指定的資料庫驅動程序 x0dx0a它接收三個參數, 分別表示1 數據源的名稱、類型 2 用戶名(可選) 3 密碼(可選) x0dx0a三、基於連接對象建立處理器對象 x0dx0aStatement stmt=conn.createStatement(); x0dx0a四、准備sql命令 x0dx0aString sql="select * from Student"; x0dx0a五、執行命令返回結果集 x0dx0aResultSet rs=stmt.executeQuery(sql); x0dx0a六、顯示結果集 x0dx0awhile(rs.next())//只要後面有記錄 x0dx0a{ x0dx0a//對當前行的所有欄位遍歷 x0dx0afor(int i=1;i<=rs.getMetaData().getColumnCount();i++) x0dx0a{ x0dx0aSystem.out.print(rs.getMetaData().getColumnName(i)+": ");//顯示欄位名 x0dx0aSystem.out.println(rs.getString(i));//顯示欄位當前值 x0dx0a} x0dx0aSystem.out.println(); x0dx0a} x0dx0ax0dx0a七、關閉資源 x0dx0ax0dx0ars.close(); //關閉記錄集 x0dx0astmt.close(); //關閉處理器對象 x0dx0aconn.close(); //關閉連接對象 x0dx0ax0dx0a預處理器的應用: x0dx0ax0dx0a//3.基於連接對象建立預處理器對象 x0dx0aPreparedStatement pstmt=conn.prepareStatement("insert into student values(?,?,?,?)"); x0dx0ax0dx0a//4.給預處理對象的參數賦值 x0dx0apstmt.setString(1,"8888"); x0dx0apstmt.setString(2,"nemo"); x0dx0apstmt.setString(3,"accp"); x0dx0apstmt.setString(4,"sanxianglu"); x0dx0ax0dx0a//5.執行預處理命令 x0dx0aint i=pstmt.executeUpdate(); x0dx0aSystem.out.println(i+"條記錄已成功插入!");

E. java是怎麼連接mysql資料庫的

java連接mysql資料庫的步驟如下:
首先要下載mysql-connection-java-5.0.16-bin.jar這個jar包(版本不一致沒關系),然後在工程中導入該庫文件。
然後寫一個類(DBHelper)用來打開或關閉資料庫:

package com.hu.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class DBHelper {
public static final String url = "jdbc:mysql://127.0.0.1/student";
public static final String name = "com.mysql.jdbc.Driver";
public static final String user = "root";
public static final String password = "root";
public Connection conn = null;
public PreparedStatement pst = null;
public DBHelper(String sql) {
try {
Class.forName(name);//指定連接類型
conn = DriverManager.getConnection(url, user, password);//獲取連接
pst = conn.prepareStatement(sql);//准備執行語句
} catch (Exception e) {
e.printStackTrace();
}
}
public void close() {
try {
this.conn.close();
this.pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
最後再寫一個Demo類來執行相關查詢操作:
package com.hu.demo;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Demo {
static String sql = null;
static DBHelper db1 = null;
static ResultSet ret = null;
public static void main(String[] args) {
sql = "select *from stuinfo";//SQL語句
db1 = new DBHelper(sql);//創建DBHelper對象
try {
ret = db1.pst.executeQuery();//執行語句,得到結果集
while (ret.next()) {
String uid = ret.getString(1);
String ufname = ret.getString(2);
String ulname = ret.getString(3);
String udate = ret.getString(4);
System.out.println(uid + "\t" + ufname + "\t" + ulname + "\t" + udate );
}//顯示數據
ret.close();
db1.close();//關閉連接
} catch (SQLException e) {
e.printStackTrace();
}
}
}

這樣就完成了mysql資料庫的連接了。

F. Java中如何與資料庫建立連接

導入java.sql包
一、載入要連接資料庫的驅動程序
//Jdbc-Odbc橋 和 Microsoft Access 資料庫
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// SQL Server 驅動程序:
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
註:Class.forName()方法將給定的類載入到JVM,如果系統中不存在給定的類,則會引發異常
二、通過驅動程序管理器得到連接實例
Connection conn=null;
//1.
//1.1建立數據源
conn=DriverManager.getConnection("jdbc:odbc:MyDataSource"); //MyDataSource是數據源名稱
//1-2、不建立數據源
conn=DriverManager.getConnection("jdbc:odbc:;Driver=Microsoft Access Driver (*.mdb);DBQ=C:\\VBTest.mdb");
//2.SQL Server
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=mydb","sa","");

註:DriverManager類跟蹤已注冊的驅動程序,通過getConnection(URL)方法, 找到一個能夠連接至URL中指定的資料庫驅動程序
它接收三個參數, 分別表示1 數據源的名稱、類型 2 用戶名(可選) 3 密碼(可選)
三、基於連接對象建立處理器對象
Statement stmt=conn.createStatement();
四、准備sql命令
String sql="select * from Student";
五、執行命令返回結果集
ResultSet rs=stmt.executeQuery(sql);
六、顯示結果集
while(rs.next())//只要後面有記錄
{
//對當前行的所有欄位遍歷
for(int i=1;i<=rs.getMetaData().getColumnCount();i++)
{
System.out.print(rs.getMetaData().getColumnName(i)+": ");//顯示欄位名
System.out.println(rs.getString(i));//顯示欄位當前值
}
System.out.println();
}

七、關閉資源

rs.close(); //關閉記錄集
stmt.close(); //關閉處理器對象
conn.close(); //關閉連接對象

預處理器的應用:

//3.基於連接對象建立預處理器對象
PreparedStatement pstmt=conn.prepareStatement("insert into student values(?,?,?,?)");

//4.給預處理對象的參數賦值
pstmt.setString(1,"8888");
pstmt.setString(2,"nemo");
pstmt.setString(3,"accp");
pstmt.setString(4,"sanxianglu");

//5.執行預處理命令
int i=pstmt.executeUpdate();
System.out.println(i+"條記錄已成功插入!");

G. 怎麼使用JAVA連接資料庫

1、載入驅動程序。

處理結果兩種情況:

1、執行更新返回的是本次操作影響到的記錄數。

2、執行查詢返回的結果是一個ResultSet對象。

ResultSet包含符合SQL語句中條件的所有行,並且它通過一套get方法提供了對這些 行中數據的訪問。

(7)java連接資料庫的過程擴展閱讀:


Statement

要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3 種類型:

1、執行靜態SQL語句。通常通過Statement實例實現。

2、執行動態SQL語句。通常通過PreparedStatement實例實現。

3、執行資料庫存儲過程。通常通過CallableStatement實例實現。

H. Java中如何實現與後台資料庫的連接

用JAVA連接資料庫主要有兩種方式,一是用JDBC-ODBC橋來連接,二是用相關廠商提供的相應驅動程序來連接,首先談談第一種連接。 x0dx0ax0dx0aJDBC-ODBC橋接器是用JdbcOdbc.Class和一個用於訪問ODBC驅動程序的本地庫實現的。對於WINDOWS平台,該本地庫是一個動態連接庫DLL(JDBCODBC.DLL)。 x0dx0ax0dx0a由於JDBC在設計上與ODBC很接近。在內部,這個驅動程序把JDBC的方法映射到ODBC調用上,這樣,JDBC就可以和任何可用的ODBC驅動程序進行交互了。這種橋接器的優點是,它使JDBC目前有能力訪問幾乎所有的資料庫。通行方式如圖所示: x0dx0ax0dx0a應用程序---JDBC API---JDBC-ODBC---ODBC API---ODBC層---數據源 x0dx0ax0dx0a具體操作方法為: x0dx0ax0dx0a首先打開控制面板的管理工具,打開數據源(ODBC),在用戶DSN裡面添加數據源(即你要連接的資料庫的名字),在這里假定連接SQL SERVER 2000的GoodsSupply資料庫。名稱填寫你要連接的資料庫的名稱(GoodsSupply),然後逐步設置,如果選用了使用SQL-SERVER密碼認證的話,就要輸入相應的用戶名及密碼連接到資料庫。一路下一步設置完成。 x0dx0ax0dx0a在JAVA裡面編寫程序進行測試,在這里我的程序是讓用戶輸入任意的表名與與列名,把該列的所有數據輸出。源代碼如下: x0dx0ax0dx0aimport java.io.BufferedReader; x0dx0aimport java.io.InputStreamReader; x0dx0aimport java.sql.*; x0dx0ax0dx0apublic class ODBCBridge { x0dx0ax0dx0apublic static void main(String[] args) { x0dx0aString url="jdbc:odbc:GoodsSupply"; x0dx0aStatement sm=null; x0dx0aString command=null; x0dx0aResultSet rs=null; x0dx0aString tableName=null; x0dx0aString cName=null; x0dx0aString result=null; x0dx0aBufferedReader input=new BufferedReader(new InputStreamReader(System.in)); x0dx0atry { x0dx0atry { x0dx0aClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //載入驅動 x0dx0a}catch(ClassNotFoundException e){ x0dx0aSystem.out.println("Can not load Jdbc-Odbc Bridge Driver"); x0dx0aSystem.err.print("ClassNotFoundException:"); x0dx0aSystem.err.println(e.getMessage()); x0dx0a} x0dx0aConnection con=DriverManager.getConnection(url,"USER","PASSWORD"); //使用SQL-SERVER2000認證 x0dx0aDatabaseMetaData dmd=con.getMetaData(); //DMD為連接的相應情況 x0dx0aSystem.out.println("連接的資料庫:"+dmd.getURL()); x0dx0aSystem.out.println("驅動程序:"+dmd.getDriverName()); x0dx0asm=con.createStatement(); x0dx0aSystem.out.println("輸入表名"); x0dx0atableName=input.readLine(); x0dx0awhile(true) { x0dx0aSystem.out.println("輸入列名(為空時程序結束):"); x0dx0acName=input.readLine(); x0dx0aif(cName.equalsIgnoreCase("")) x0dx0abreak; x0dx0acommand="select "+cName+" from "+tableName; x0dx0ars=sm.executeQuery(command); //執行查詢 x0dx0aif(!rs.next()) x0dx0aSystem.out.println("表名或列名輸入有誤"); x0dx0aelse { x0dx0aSystem.out.println("查詢結果為:"); x0dx0ado x0dx0a{ x0dx0aresult=rs.getString(cName); x0dx0a//資料庫語言設置為中文,不用轉換編碼 x0dx0a//result=new String(result.getBytes("ISO-8859-1"),"GB2312"); x0dx0aSystem.out.println(result); x0dx0a}while(rs.next()); x0dx0a} x0dx0a} x0dx0a}catch(SQLException ex) { x0dx0aSystem.out.println("SQLException:"); x0dx0awhile(ex!=null) { x0dx0aSystem.out.println("Message:"+ex.getMessage()); x0dx0aex=ex.getNextException(); x0dx0a} x0dx0a}catch(Exception e) { x0dx0aSystem.out.println("IOException"); x0dx0a} x0dx0a} x0dx0a}

I. java是怎麼連接mysql資料庫的

使用java連接MySQL資料庫與其他的資料庫連接核心是一樣的,如果說區別,那就是所需的驅動不一樣。


工具/原料

MySQL、JDK


方法/步驟

1、首先需要安裝好JDK(配置環境變數),如圖所示:

3、最後通過代碼進行連接。

(1)確定連接路徑URL:

String url="jdbc:mysql://localhost(可以是本機IP地址):3306(埠號)/mysqltest(資料庫名稱)?"+"user=用戶賬號&password=用戶密碼&useUnicode=字元編碼";

(2)載入驅動:

Class.forName("com.mysql.jdbc.Driver");

(3)連接,獲取Connection對象

Connection conn=DriverManager.getConnection(url)

(4)可以通過conn對象檢驗連接與否。