最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2020年07月27日 10:42:50   作者:一只胡說八道的猴子  
這篇文章主要介紹了java JDBC系列教程之JDBC類的簡析與JDBC的基礎操作,本文分步驟通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

什么是JDBC?

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

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

JDBC的使用步驟

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

代碼實現(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 {
    //注冊驅動
    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+"行受到影響");
    //關閉資源
    statement.close();
    connection.close();
  }
}

類詳解

DriverManager:驅動管理對象

功能:
1.注冊驅動,告訴程序應該使用哪個驅動的java包
static void registerDriver(Driver driver) :注冊與給定的驅動程序 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 {
    //注冊驅動
      DriverManager.registerDriver(new Driver());
    } catch (SQLException var1) {
      throw new RuntimeException("Can't register driver!");
    }
  }
}

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

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

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

**

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

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

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

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

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

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

使用步驟:

  • 游標向下移動一行
  • 判斷是否有數(shù)據(jù)
  • 獲取數(shù)據(jù)

代碼演示

package JDBC;
import java.sql.*;
public class Main {
  public static void main(String[] args) throws ClassNotFoundException, SQLException {
    //注冊驅動
    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);
    }
    //關閉資源
    statement.close();
    connection.close();
  }
}

結果

到此這篇關于java JDBC系列教程之JDBC類的簡析與JDBC的基礎操作的文章就介紹到這了,更多相關java JDBC類與操作內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java基于logback?MessageConverter實現(xiàn)日志脫敏方案分析

    Java基于logback?MessageConverter實現(xiàn)日志脫敏方案分析

    本文介紹了一種日志脫敏方案,即基于logbackMessageConverter和正則匹配的方法,該方法的優(yōu)點是侵入性低,工作量少,只需修改xml配置文件,適用于老項目,感興趣的朋友跟隨小編一起看看吧
    2024-10-10
  • Java 重入鎖和讀寫鎖的具體使用

    Java 重入鎖和讀寫鎖的具體使用

    這篇文章主要介紹了Java 重入鎖和讀寫鎖的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • 解析Java的Spring框架的BeanPostProcessor發(fā)布處理器

    解析Java的Spring框架的BeanPostProcessor發(fā)布處理器

    這篇文章主要介紹了Java的Spring框架的BeanPostProcessor發(fā)布處理器,Spring是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下
    2015-12-12
  • Mybatis查詢記錄條數(shù)的實例代碼

    Mybatis查詢記錄條數(shù)的實例代碼

    這篇文章主要介紹了Mybatis查詢記錄條數(shù)的實例代碼,需要的朋友可以參考下
    2017-08-08
  • idea運行tomcat報錯找不到catalina.bat,系統(tǒng)找不到指定的文件問題

    idea運行tomcat報錯找不到catalina.bat,系統(tǒng)找不到指定的文件問題

    這篇文章主要介紹了idea運行tomcat報錯找不到catalina.bat,系統(tǒng)找不到指定的文件問題,具有很好的參考價值,希望對大家有所幫助,
    2023-11-11
  • 基于java URL和URLConnection(詳解)

    基于java URL和URLConnection(詳解)

    下面小編就為大家分享一篇基于java URL和URLConnection(詳解),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • SpringBoot中使用攔截器的配置詳解

    SpringBoot中使用攔截器的配置詳解

    這篇文章主要介紹了SpringBoot中使用攔截器的配置詳解,攔截器是?AOP?的一種實現(xiàn),專門攔截對動態(tài)資源的后臺請求,即攔截對控制層的請?求,使用場景比較多的是判斷用戶是否有權限請求后臺,需要的朋友可以參考下
    2024-01-01
  • Java生成UUID的常用方式示例代碼

    Java生成UUID的常用方式示例代碼

    UUID保證對在同一時空中的所有機器都是唯一的,通常平臺會提供生成的API,按照開放軟件基金會(OSF)制定的標準計算,用到了以太網(wǎng)卡地址、納秒級時間、芯片ID碼和許多可能的數(shù)字,下面這篇文章主要給大家介紹了關于Java生成UUID的常用方式,需要的朋友可以參考下
    2023-05-05
  • Java超詳細講解類的繼承

    Java超詳細講解類的繼承

    繼承就是可以直接使用前輩的屬性和方法。自然界如果沒有繼承,那一切都是處于混沌狀態(tài)。多態(tài)是同一個行為具有多個不同表現(xiàn)形式或形態(tài)的能力。多態(tài)就是同一個接口,使用不同的實例而執(zhí)行不同操作
    2022-04-04
  • 解決IDEA報錯war?exploded?is?not?valid問題

    解決IDEA報錯war?exploded?is?not?valid問題

    在使用IntelliJ?IDEA時遇到'[projectname]warexploded'無效的問題,可以通過清除項目列表、重新導入項目和配置新的Tomcat來解決,確保在Tomcat配置中,將ApplicationContext修改為僅包含一個'/',這一方法或許能幫助遇到相似問題的開發(fā)者
    2024-09-09

最新評論

兴安盟| 那曲县| 正阳县| 邢台市| 广南县| 望都县| 平原县| 文山县| 内江市| 崇文区| 璧山县| 巴青县| 尚义县| 新乡市| 义马市| 光山县| 漳浦县| 永修县| 陵川县| 乐亭县| 兴义市| 青州市| 临漳县| 琼海市| 商河县| 巴林右旗| 保山市| 青州市| 芮城县| 黄平县| 兴安盟| 兴宁市| 读书| 喀什市| 建始县| 太原市| 南阳市| 遂宁市| 英吉沙县| 通山县| 连州市|