JDBC概述

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

JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

JDBC需要连接驱动,驱动是两个设备要进行通信,满足一定通信数据格式,数据格式由设备提供商规定,设备提供商为设备提供驱动软件,通过软件可以与该设备进行通信。

JDBC原理

Java提供访问数据库规范称为JDBC,而生产厂商提供规范的实现类称为驱动。

        JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第1张

 

JDBC是接口,驱动是接口的实现,没有驱动将无法完成数据库连接,从而不能操作数据库!每个数据库厂商都需要提供自己的驱动,用来连接自己公司的数据库,也就是说驱动一般都由数据库生成厂商提供。

 

JDBC开发步骤

  1. 注册驱动.
  2. 获得连接.
  3. 获得语句执行平台
  4. 执行sql语句
  5. 处理结果
  6. 释放资源.

 JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第2张

JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第3张

 

 

详解各个对象:

注册驱动

通过查询com.mysql.jdbc.Driver源码,我们发现Driver类“主动”将自己进行注册

 

    static {

        try {

            java.sql.DriverManager.registerDriver(new Driver());

        } catch (SQLException E) {

            throw new RuntimeException("Can't register driver!");

        }

    }}

 

2.获取数据库连接

  *方法:staticConnection getConnection(Stringurl,String user,String password)

  *参数:url:指定连接路径

      语法:jdbc:mysql://ip地址(域名):端口号/数据库名称

      例子:"jdbc:mysql://localhost:3306/lyd01"

           细节:如果连接的是本机MySQL服务器,并且MySQL服务器默认端口是3306,则可以简写为:jdbc:mysql://数据库名称

           user:用户名

           password:密码

Connection:数据库连接对象

功能:

  1. 获取执行sql的对象

*Statement createStatement()

*PreparedStatement prepareStatement(String sql)

         2.管理实务:

                   开启实务:setAutoCommit(boolean autoCommit):调用该方法设置为false

                   提交实务:commit()

                   回滚实务:rollback()

         Statement:执行sql的对象

boolean execute(String sql); --执行select返回true 执行其他的语句返回false.

int executeUpdate(String sql); --执行insert update delete语句.

ResultSet executeQuery(String sql); --执行select语句.

  *返回值:影响的行数,可能通过这个影响行数的判断DML语句是否执行成功 ,返回值>0则执行成功,反正失败

 

连接数据库

JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第4张

目的:使用工具类来,简化书写

*分析:

  1.抽取注册驱动

2.抽取一个方法获取连接

3.抽取方法释放资源

 

先写一个jdbc.properties文件

JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第5张

创建一个工具类

JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第6张JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第7张JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第8张

 

 定义一个类封装

JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第9张JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第10张

 

然后写主流程调用

JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第11张

JDBC(Java Data Base Connectivity,java数据库连接) 随笔 第12张

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄