JDBC

作者: 刚子来简书啦 | 来源:发表于2020-10-01 23:04 被阅读0次

    JDBC是 Java DataBase Connectivity 的缩写,它是连接Java程序和数据库服务器的纽带。Java应用程序必须通过JDBC驱动器来访问数据库,java.sql.DriverManager类运用桥梁设计模式来实现与各种不同的JDBC驱动器的通信。

    DriverManager的桥梁设计模式

    JDBC API 主要位于 java.sql 包中:

    1. Driver接口和DriverManager类
    2. Connection接口
    3. Statement接口
    4. PrepareStatement接口
    5. ResultSet接口

    在Java程序中,通过JDBC API访问数据库包含以下步骤:

    1. 获得要访问的数据库的JDBC驱动器的类库,把它放到classpath中。
    2. 在程序中加在并注册JDBC驱动器,其中JDBC-ODBC驱动器是在JDK中自带的,默认为已经注册。
    // 加载 JdbcOdbcDriver 类
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    
    // 加载 SQLServerDriver 类
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    // 注册 SQLServerDriver 类
    java.sql.DriverManager.registerDriver(new com.microsoft.jdbc.sqlserver.SQLServerDriver());
    
    // 加载 OracleDriver 类
    Class.forName("oracle.jdbc.driver.OracleDriver");
    // 注册 OracleDriver 类
    java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    
    // 加载 MySQL Driver 类
    Class.forName("com.mysql.jdbc.Driver");
    // 注册 MySQL Driver 类
    java.sql.DriverManager.registerDriver(new com.mysql.jdbc.Driver());
    
    1. 建立与数据库的连接。
    Connection con = java.sql.DriverManager.getConnection(dburl, user, password);
    

    dburl表示连接数据库的 JDBC URL,user和password分别表示连接数据库的用户名和密码。

    # JDBC URL 的一般形式
    jdbc:drivertype:driversubtype://parameters
    # JDBC-ODBC Driver 连接数据库
    jdbc:odbc:datasource
    # Oracle 数据库连接
    jdbc:oracle:this:@localhost:1521:sid
    # SQLServer 数据库连接
    jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=DB_NAME
    # MySQL 数据库连接
    jdbc:mysql://localhost:3306/DB_NAME
    
    1. 创建Statement对象,准备执行SQL。
    Statement stmt = con.createStatement();
    
    1. 执行SQL语句。
    String sql = "select `col1`, `col2` from `table1` where 1";
    ResultSet rs = stmt.executeQuery(sql);
    
    1. 访问ResultSet中的记录集。
    while(rs.next()){
        String col1 = rs.getString(1);
        float col2 = rs.getFloat(2);
    }
    
    1. 依次关闭ResultSet、Statement和Connection对象。
    rs.close();
    stmt.close();
    con.close();
    

    JDBC 2.0 提供了 javax.sql.DataSource 接口,它负责建立与数据库的连接,当在应用程序中访问数据库时不必编写连接数据库的代码,可以直接从数据源获得数据库连接。

    相关文章

      网友评论

          本文标题:JDBC

          本文链接:https://www.haomeiwen.com/subject/xcijmhtx.html