JDBC学习之旅分享(一)

记录JDBC的学习(一)

  • 什么是JDBC
  • JDBC的主要用的接口
  • JDBC具体创建过程

一、什么是JDBC

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。

通过JDBC我们可以访问各种关系型数据库.在这里我要提一下咱们的数据库连接池。数据库连接池是为了数据库建立一个“缓存池”,预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去。

目前有常用的数据库连接池技术有:1. C3P0数据库连接池;2.DBCP数据库连接池;3.Druid(德鲁伊)数据库连接池。我在这里重点对Druid数据库连接池作为讲解,这也是我们最常用的连接池技术。

JDBC是通过相对应的驱动而去对数据库进行相关操作的.



二、JDBC的主要用的接口

1.Driver接口
因为JDBC是通过相关数据库驱动进而对数据库进行操作.以最常用的Mysql为例子
(1)获取Driver实现类对象
Mysql5.6版本:
Mysql8.0版本以上:

(2)使用反射
Mysql5.6版本:
Mysql8.0版本以上:

2.Connection()接口

(1)
这里面需要设置Druid的url,info。这里面的info就是username和password参数.通过Properties对象来封装

setProperty来设置user,password.(键值对)



(2)DriverManger


三、JDBC具体构造过程(数据库的连接)

方法一

点击查看代码
 Driver driver = new com.mysql.cj.jdbc.Driver();
        //2.设置连接池数据参数
        String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Hongkong";
        //将用户名和密码封装在Properties中
        Properties properties = new Properties();
        properties.setProperty("user","root");
        properties.setProperty("password","123456");
        //3.使用connect连接
        Connection connection =  driver.connect(url,properties);
        System.out.println(connection);//检查连接

注意:
jdbc:mysql 协议
localhost ip
3306 端口号
test 数据库名称
mysql8.0版本以上必须是
useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Hongkong

方法二

点击查看代码
 //1.注册驱动,获取driver类实现对象
        Class aclass = Class.forName("com.mysql.cj.jdbc.Driver");
        Driver driver = (Driver) aclass.newInstance();
        DriverManager.registerDriver(driver);
        //2.获取连接
        String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Hongkong";
        String user = "root";
        String password = "123456";
        Connection connection = DriverManager.getConnection(url, user, password);
        System.out.println(connection);

方法三(重点掌握!!!,是我们经常使用的数据库连接方法)

因为连接池中url,user,password,driverClass是重复出现在代码块中,我们可以设置配置文件将其配置参数放到里面,避免代码的重复性. 注意配置文件在idea放在resource夹里面加载
1.设置配置文件(以mysql8.0为例子)
        String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Hongkong";
        String user = "root";
        String password = "123456";
        driverClass = "com.mysql.cj.jdbc.Driver";
2.JDBC设置
        //加载文件
        InputStream inputStream = ClassLoader.getSystemClassLoader().getResourceAsStream("jdbc.properties");
        Properties properties = new Properties();
        properties.load(inputStream);
        //设置四个配置参数
        String user = properties.getProperty("user");
        String password = properties.getProperty("password");
        String url = properties.getProperty("url");
        String driverClass = properties.getProperty("driverClass");
        //加载驱动
        Class.forName(driverClass);
        //获取连接.DriverManager类getConnection(String url, String user, String password)
        Connection connection = DriverManager.getConnection(url,user,password);
        System.out.println(connection);
posted @ 2022-10-01 00:03  小钱不会敲代码  阅读(18)  评论(0)    收藏  举报