浅析JDBC常用的类和接口——JDBC的Driver接口、DriverManager类、Connection接口

2021-05-18 15:17:28 浏览数 (1)

大家好,我是Java进阶者。今天给大家继续分享JDBC技术。

一、前言

在《Java的数据库访问》文章介绍了JDBC技术,在不同的数据库需要不同的驱动程序。本文主要给大家介绍怎么使用Java连接数据库,接下来带大家一起来学习!

二、Driver接口

1.在JDBC中,每个驱动程序一般会提供一个实现Dirver接口的类。当你在加载某一个Driver类,它自己实例化并向DriverManager注册这个实例。这就是意味着用户可以使用Class.forName()方法来调用程序加载和注册一个驱动程序。

2.Driver常用方法

常用方法

1)Boolean acceptsURL(String url): 测试URL可不可以进行连接。

2)Connection connect(String url, Properties info): 创建一个连接到指定数据库URL。

3)int getMajorVersion(): 获取驱动程序的主版本号。

4)int getMinorVersion(): 获取驱动程序的次版本号。

5)DriverPropertyInfo[] getPropertyInfo(String url, Properties info): 获取驱动程序的属性。

三、通过一个案例来了解加载MySQL驱动类的用法

1.首先导入拓展包“mysql-connector-java-5.1.7-bin.jar”,在Ecilpse编辑软件的当前项目右键选择“Bulid Path”,再选择“Configure Build Path...”,选择Libraies,在右边有个“Add External JARs...”按钮把这个拓展包加进来,然后点击“OK”。

2.在上面介绍了Driver接口的基础知识点,接下来,小编通过一个案例带大家一起了解加载MySQL的驱动类的用法,代码如下所示:

代码语言:javascript复制
public class Example24 {
    public static void main(String[] args) {
            //定义一个字符串来保存com.mysql.jdbc的Driver类路径
            String driver="com.mysql.jdbc.Driver";
            try {
                Class.forName(driver);
                System.out.println("驱动程序加载成功...");
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                System.out.println("驱动程序加载失败...");
            }   
    }
}

效果图如下所示:

在上面代码中,首先是声明一个字符串来保存com.mysql.jdbc的Driver类路径,使用Class.forName()方法来加载这个驱动,方便后续数据库连接。

四、DriverManager类

1.DriverManager类是用于加载JDBC驱动程序,并且创建和数据库连接,对于任何给定的连接请求,它会让每个驱动程序依次尝试连接到目标的URL。

2.DriverManager常用方法

常用方法如下所示:

1)static Connection getConnection(String url,String user, String password):用于连接到指定的数据库URL。

2)static void setLoginTimeout(int seconds):设置驱动程序连接的最长时间。

3)static void registerDriver(Driver driver):用于向DriverManager注册指定的驱动程序。

五、Connection接口

1.Connection接口是用于和特定的数据库进行连接,在连接上下文中执行SQL语句并且返回结果。

2.Connection常用方法

常用方法:

1)Statement createStatement():创建一个Statement对象把SQL语句传递给数据库。

2)PreparedStatement prepareStatement(String sql):创建一个PreparedStatement对象把参数化SQL语句传递给数据库。

3)boolean isClosed(): 判断Connectuon对象是否关闭。

4)boolean isReadOnly(): 判断Connection对象是否只读。

5)void close(): 立即释放此Connection对象的数据库和JDBC资源。

六、通过一个案例了解连接MySQL数据库的用法

1.首先导入拓展包“mysql-connector-java-5.1.7-bin.jar”,在Ecilpse编辑软件的当前项目右键选择“Bulid Path”,再选择“Configure Build Path...”,选择Libraies,在右边有个“Add External JARs...”按钮把这个拓展包加进来,然后点击“OK”。

2.通过上面所学的知识,接下来,小编通过一个案例带大家一起了解连接MySQL数据库的用法,代码如下所示:

代码语言:javascript复制
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Example24 {
    public static void main(String[] args) {
            //定义一个字符串来保存com.mysql.jdbc的Driver类路径
            String driver="com.mysql.jdbc.Driver";
            
            //数据库地址,本机、端口号3306、数据库名为test
            String url="jdbc:mysql://localhost:3306/test";
            //用户名
            String user="root";
            //密码
            String pwd="168168";
            
            try {
                Class.forName(driver);
                System.out.println("驱动程序加载成功...");
                Connection conn=DriverManager.getConnection(url,user,pwd);
                System.out.println("数据库连接成功:" conn);
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                System.out.println("驱动程序加载失败...");
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }   
    }
}

效果图如下所示:

在上面代码中,首先是先加载驱动程序,之后,定义三个字符串保存数据库地址、用户名、密码,使用getConnection()方法进行数据库的连接。

七、总结

1.本文介绍了JDBC的Driver接口、DriverManager类、Connection接口。

2.介绍了Driver接口,当你在加载某一个Driver类,它自己实例化并向DriverManager注册这个实例。文中介绍使用Class.forName()方法来调用程序加载和注册一个驱动程序的具体过程,还介绍了它的常用方法。

3.介绍了DriverManager类,它是用于加载JDBC驱动程序,并且创建和数据库连接,对于任何给定的连接请求,它会让每个驱动程序依次尝试连接到目标的URL。

4.介绍了Connection接口,它是用于和特定的数据库进行连接,在连接上下文中执行SQL语句并且返回结果。

5.希望大家通过本文的学习,对你有所帮助!

最后需要拓展包的小伙伴,可以在公众号后台回复“拓展包”关键字进行获取。

我是Java进阶者,希望大家通过本文的学习,对你有所帮助!欢迎大家加我微信,有问题可以随时帮大家解决噢,交个朋友也好哇~

------------------- End -------------------

0 人点赞