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

本文详细介绍了JDBC中DriverManager如何管理数据库驱动,以及两种驱动注册方式:通过DriverManager.registerDriver()和Class.forName()。通常推荐使用Class.forName(),因为它避免了不必要的Driver实例化和对特定数据库驱动的直接依赖,降低了耦合性。
摘要由CSDN通过智能技术生成

    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");
     这两种注册方式有什么不同呢?第一种方式,相对比较好理解,就是先创建数据库驱动,
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值