成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

java JDBC系列教程之JDBC類的簡析與JDBC的基礎(chǔ)操作

瀏覽:98日期:2022-08-28 09:20:15

什么是JDBC?

概念:JAVA Database Connectivity Javas數(shù)據(jù)庫連接,Java語言操作數(shù)據(jù)庫接口,然后由各個(gè)數(shù)據(jù)庫廠商去實(shí)現(xiàn)這個(gè)接口,提供數(shù)據(jù)庫驅(qū)動(dòng)java包,我們可以使用這套接口,真正執(zhí)行的是jar驅(qū)動(dòng)包中的實(shí)習(xí)類

使用一張圖讓大家更為直觀的理解:coder就是寫這套接口的程序員

java JDBC系列教程之JDBC類的簡析與JDBC的基礎(chǔ)操作

JDBC的使用步驟

1.導(dǎo)入驅(qū)動(dòng)jar包2.注冊驅(qū)動(dòng)3.獲取數(shù)據(jù)庫連接對象4.定義sql執(zhí)行語句5.獲取sql語句執(zhí)行對象6.執(zhí)行sql語句返回結(jié)果7.處理結(jié)果8.釋放結(jié)果

代碼實(shí)現(xiàn)

package JDBC;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;public class Main { public static void main(String[] args) throws ClassNotFoundException, SQLException { //注冊驅(qū)動(dòng) Class.forName('com.mysql.jdbc.Driver'); //獲取數(shù)據(jù)庫連接對象 Connection connection = DriverManager.getConnection('jdbc:mysql://localhost:3309/db2', 'root', '1234'); //定義sql語句 String sql='update count set money=10000'; //定義statement執(zhí)行語句 Statement statement = connection.createStatement(); //執(zhí)行sql語句 int i = statement.executeUpdate(sql); System.out.println('共'+i+'行受到影響'); //關(guān)閉資源 statement.close(); connection.close(); }}

類詳解

DriverManager:驅(qū)動(dòng)管理對象

功能:1.注冊驅(qū)動(dòng),告訴程序應(yīng)該使用哪個(gè)驅(qū)動(dòng)的java包static void registerDriver(Driver driver) :注冊與給定的驅(qū)動(dòng)程序 DriverManager 。

寫代碼使用:

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

查看jar包下的源碼得:

package com.mysql.jdbc;import java.sql.DriverManager;import java.sql.SQLException;public class Driver extends NonRegisteringDriver implements java.sql.Driver { public Driver() throws SQLException { } static { try { //注冊驅(qū)動(dòng) DriverManager.registerDriver(new Driver()); } catch (SQLException var1) { throw new RuntimeException('Can’t register driver!'); } }}

我們可以發(fā)現(xiàn)在com.mysql.jdbc.Driver類中存在靜態(tài)代碼塊,內(nèi)部調(diào)用registerDriver(new Driver)注冊驅(qū)動(dòng)mysql5之后可以省略注冊驅(qū)動(dòng)的步驟

獲取數(shù)據(jù)庫連接

方法:static connection getConnection(String sql,String password)參數(shù):* url:指定連接的路徑* 語法:jdbc:mysql://ip地址(域名):端口號/數(shù)據(jù)庫名稱* 例子:jdbc:mysql://localhost:3306/db3* 細(xì)節(jié):如果連接的是本機(jī)mysql服務(wù)器,并且mysql服務(wù)默認(rèn)端口是3306,則url可以簡寫 為:jdbc:mysql:///數(shù)據(jù)庫名稱* user:用戶名* password:密碼

**

Connection 數(shù)據(jù)庫連接對象**

1.功能1.1 獲取sql語句的執(zhí)行對象*Statement createStatement()* PreparedStatement prepareStatement(String sql)

1.2 管理事務(wù)開啟事務(wù):setAutoCommit(boolean autocommit),調(diào)用改方法,參數(shù)為false時(shí)開啟事務(wù)提交事務(wù):commit();回滾事務(wù):rollback()

1.3 statement:執(zhí)行sql語句的對象

執(zhí)行sql1. boolean execute(String sql) :可以執(zhí)行任意的sql 了解2. int executeUpdate(String sql) :執(zhí)行DML(insert、update、delete)語句、 DDL(create,alter、drop)語句* 返回值:影響的行數(shù),可以通過這個(gè)影響的行數(shù)判斷DML語句是否執(zhí)行成功 返回值>0的則執(zhí)行成功,反之,則失敗。

**1.4ResultSet:結(jié)果集對象,封裝查詢結(jié)果** boolean next():游標(biāo)向下移動(dòng)一行,判斷當(dāng)前行是不是最后一行,如果是則返回false,如果不是則返回true getXxx(參數(shù)):獲取數(shù)據(jù)* Xxx:代表數(shù)據(jù)類型 如: int getInt() ,String getString()* 參數(shù):1. int:代表列的編號,從1開始 如: getString(1)2. String:代表列名稱。 如: getDouble('balance')

使用步驟:

游標(biāo)向下移動(dòng)一行 判斷是否有數(shù)據(jù) 獲取數(shù)據(jù)

代碼演示

package JDBC;import java.sql.*;public class Main { public static void main(String[] args) throws ClassNotFoundException, SQLException { //注冊驅(qū)動(dòng) Class.forName('com.mysql.jdbc.Driver'); //獲取數(shù)據(jù)庫連接對象 Connection connection = DriverManager.getConnection('jdbc:mysql://localhost:3309/db2', 'root', '1234'); //定義sql語句 String sql='SELECT *FROM COUNT '; //定義statement執(zhí)行語句 Statement statement = connection.createStatement(); //執(zhí)行sql語句 ResultSet resultSet = statement.executeQuery(sql); //循環(huán)輸出 while(resultSet.next()){ int anInt = resultSet.getInt(1); String string = resultSet.getString(2); int anInt2 = resultSet.getInt(3); System.out.println('ID:'+anInt); System.out.println('name:'+string); System.out.println('money:'+anInt2); } //關(guān)閉資源 statement.close(); connection.close(); }}

結(jié)果

java JDBC系列教程之JDBC類的簡析與JDBC的基礎(chǔ)操作

到此這篇關(guān)于java JDBC系列教程之JDBC類的簡析與JDBC的基礎(chǔ)操作的文章就介紹到這了,更多相關(guān)java JDBC類與操作內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章: