对JDBC驱动注册--DriverManager.registerDriver和 Class.forName()的理解

    JDBC提供了独立于数据库的统一API,MySQL、Oracle等数据库公司都可以基于这个标准接口来进行开发。包括java.sql包下的Driver,Connection,Statement,ResultSet是JDBC提供的接口。而DriverManager是用于管理JDBC驱动的服务类,主要用于获取Connection对象(此类中全是静态方法)。

     当我们查看API,在Driver接口中,明确要求:Driver接口是每个驱动程序类必须实现的接口。Java SQL 框架允许多个数据库驱动程序。每个驱动程序都应该提供一个实现 Driver 接口的类。并且明确:在加载某一 Driver 类时,它应该创建自己的实例并向 DriverManager 注册该实例。这意味着用户可以通过调用以下程序加载和注册一个驱动程序

Class.forName("foo.bah.Driver")
    下边重点分析注册驱动的两种方式:

     第一种:

Driver driver = new Driver();//com.mysql.jdbc.Driver
DriverManager.registerDriver(driver);
     第二种:
Class.forName("com.mysql.jdbc.Driver");
     这两种注册方式有什么不同呢?第一种方式,相对比较好理解,就是先创建数据库驱动,

你可能感兴趣的:(Java,Web开发,jdbc,DriverManager,数据库驱动注册,java,JDBC连接数据库)