美文网首页
java数据库连接

java数据库连接

作者: 冷月成双 | 来源:发表于2020-05-12 22:36 被阅读0次

java.sql包详解

数据类型

java.sql.Array
java.sql.Blob
java.sq1.Clob
java.sql.Date
java.sq1.NC1ob
java.sq1.Struct
java.sq1.Time
java.sq1.Timestamp
java.sq1.SQLXML
java.sql.Ref
java.sql.RowId
java.sq1.SQLOutput
java.sq1.SQLData
java.sq1.SQLInput

枚举

java.sq1.SQLType
java.sq1.JDBCType
java.sq1.Types
java.sq1.RowIdLifeTime
java.sq1.PseudoColumnUsage
java.sql.ClientinfoStatus

API相关

java.sq1.Wrapper
java.sq1.Connection
java.sq1.Statement
java.sql.CallableStatement
java.sq1.PreparedStatement
java.sq1.DatabaseMetaData
java.sq1.ParameterMetaData
java.sq1.ResultSet
java.sql.ResultSetMetaData

驱动相关

java.sql.Driver
java.sql.DriverAction
java.sq1.DriverManager
java.sql.DriverPropertyInto
java.sq1.SQLPermission
java.sql.Savepoin

异常

java.sq1.BatchupdateException
java.sq1.DataTruncation
java.sq1.SQLClientInfoException
java.sq1.SQLDataException
java.sq1.SQLException
java.sq1.SQLFeatureNotSupportedException
java.sq1.SQLIntegrityConstraintViolationException
java.sq1.SQLInvalidAuthorizationSpecException
java.sql.SQLNonTransientConnectionException
jaya.sql.SQLNonTransientException
java.sq1.SQLSyntaxErrorException
java.sq1.SQLTimeoutException
java.sq1.SQLTransactionRollbackException
java.sql.SQLTransientConnectionException
java.sql.SQLTransientException
java.sql.SQLWarning

作为Java开发人员需要掌握的API

java.sq1.Wrapper
    <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException;
    //unwrap()方法用于返回未经过包装的JDBC驱动原始类型实例,我们可以通过该实例调用JDBC驱动中提供的非标准的方法。
     boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException;
     //isWrapperFor()方法用于判断当前实例是否是JDBC驱动中某一类型的包装类型。
java.sq1.Connection
java.sq1.Statement
java.sq1.CallableStatoment
java.sq1.PreparedStatement
java.sq1.DatabaseMetaData
java.sql.ParameterMetaData
java.sql.ResultSet
java.sq1.ResultSetMetaData

javax.sql包详解

数据源

javax.sq1.DataSource
javax.sq1.CommonDataSource

连接池相关

javax.sq1.ConnectionPoolDataSource
javax.sql.PooledConnection
javax.sq1.ConnectionEvent
javax.sq1.ConnectionEventListener
javax.sq1.StatementEvent
javax.sq1.StatementEventListener

ResultSet扩展

javax.sql.RowSet
javax.sql.RowSetEvent
javax.sql.RowSetInternal
javax.sq1.RowSetListener
javax.sql.RowSetMetaData
javax.sq1.RowSetReader
javax.sql.RowSetWriter

分布式扩展

javax.sq1.XAConnection
javax.sq1.XADataSource

JDBC驱动

所有的JDBC驱动都必须实现Driver接口,而且实现类必须包含一个静态初始化代码块

package com.mysql.cj.jdbc;

import com.mysql.cj.jdbc.NonRegisteringDriver;
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!");
        }
    }
}

当我们加载驱动实现类时,上面的静态初始化代码块就会被调用,向DriverManager中注册一个驱动类的实例。这就是为什么我们使用JDBC操作数据库时一般会先加载驱动

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

为了确保驱动程序可以使用这种机制加载,Driver实现类需要提供一个无参数的构造方法。

常用的数据库驱动程序的驱动实现类名及JDBC URL如下:

Oracle

驱动程序类名:oracle.jdbc.driver.OracleDriver
JDBC URL:jdbc: oracle:thin:@//<host>:<port>/ServiceNamejdbc:oracle:thin:@<host>:<port>:<SID>
例如:jdbc:oracle:thin:@localhost:1521:orcl

MySQL

驱动程序类名:com.mysql.jdbc.Driver。新驱动(com.mysql.cj.jdbc.Driver)
JDBC URL:jdbc: mysql://<host>:<port>/<database_name>
例如:jdbc:mysql://localhost/sample

IBM DB2

驱动程序类名:com.ibm.db2.jcc.DB2Driver
JDBC URL:jdbc:db2://<host>[:<port>]/<database_name>
例如:jdbc:db2://localhost:5000/sample

DataSource

相关文章

  • 连接数据库(JDBC)

    JDBC:Java DataBase Connection Java数据库连接,用来操作关系型数据库。 连接数据库...

  • JDBC

    直接用Java对数据库进行操作 JDBC(Java DataBase Connectivity,java数据库连接...

  • 1.0.1 JDBC基础概述

    JDBC Java DataBase Connectivity 就是Java数据库连接,用Java语言向数据库发送...

  • 阿里P6告诉解析Java数据库连接(JDBC)

    DBC英文全称为Java DataBase Connectivity,即Java数据库连接,也就是Java程序连接...

  • JDBC操作

    JDBC(Java Data Base Connectivity,java数据库连接)是java数据可连接技术的简...

  • 8.7JDBC学习

    jdbc连接mysql JDBC(Java Data Base Connectivity,java数据库连接)是一...

  • 【JAVA基础】JAVA 连接数据库

    为什么要连接数据库 JAVA如何去连接,操作数据库*. JDBC Java Database Connecti...

  • JDBC基础

    JDBC: JDBC:Java DataBase Connectivity Java 数据库连接, Java语言...

  • JDBC学习笔记(一)

    JDBC:Java Database Connectivity,即java数据库连接,用java语言操作数据库。 ...

  • JDBC

    概念∶Java DataBase Connectivity Java 数据库连接, Java语言操作数据库。JDB...

网友评论

      本文标题:java数据库连接

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