JDBC

 知识点一、

  

Class.forName(driverName); 加载一个类,默认会先加载静态方法(可以做“见不得人”的事情),这个静态方法就是把自己注册到 DriverManager中。

Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd);

public class Driver extends NonRegisteringDriver implements java.sql.Driver {//类名和接口名相同,但不是同一个东西
    static {
        try {
            java.sql.DriverManager.registerDriver(new Driver());//这里注册
        } catch (SQLException E) {
            throw new RuntimeException("Can't register driver!");
        }
    }
……
}

知识点二、 jdbc4.0之后,每个驱动jar包中,在META-INF目录下提供了一个名为java.sql.Driver的文件。文件的内容就是该接口的实现类名称!

  所以不用写这句Class.forName(driverName); 

知识点三、 各大驱动写法

#mysql
#url=jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf8&useServerPrepStmts=true&cachePrepStmts=true&prepStmtCacheSize=50&prepStmtCacheSqlLimit=300
#driverClassName=com.mysql.jdbc.Driver

#mssql
#driverClassName=com.microsoft.jdbc.sqlserver.SQLServerDriver
#url=jdbc:sqlserver://127.0.0.1:1433;DatabaseName=mydb

#mssql jtds
#driverClassName=net.sourceforge.jtds.jdbc.Driver
#url=jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=mydb

#orcale
#driverClassName=oracle.jdbc.driver.OracleDriver
#url=jdbc:oracle:thin:@localhost:1521:mydb

#access
#driverClassName=sun.jdbc.odbc.JdbcOdbcDriver  微软的桌面数据库
#url=jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=mdb\mydb.mdb

原文地址:https://www.cnblogs.com/rogge7/p/6994156.html