【MySQL】JDBC编程

作者主页:paper jie_博客****

本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。

本文录入于《MySQL》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造,将MySQL基础知识一网打尽,希望可以帮到读者们哦。

其他专栏:《算法详解》《C语言》《javaSE》《数据结构》等

内容分享:本期将会分享Java的JDBC编程

目录

JDBC是什么

JDBC的工作原理

JDBC的使用

准备数据库驱动包

将驱动包添加到项目中

正式使用

[1. 创建数据源](#1. 创建数据源)

[2. 连接数据库服务器](#2. 连接数据库服务器)

[3. 构造sql语句](#3. 构造sql语句)

[4. 将构造的sql语句传送给服务器执行](#4. 将构造的sql语句传送给服务器执行)

[5. 将资源释放](#5. 将资源释放)

最终代码


JDBC是什么

JDBC即java数据库连接. 是一种用于执行SQL语句的Java API, 它是Java中的数据坤连接的规范.这个API由java.sql.*,javax.sql.*包中的一些类和接口组成的,它为Java开发人员操作数据库提供了一个标准的API,可以为多种数据库提供统一访问. 如: MySQL提供了Java的驱动包mysql-connector-java, 需要基于Java操作MySQL需要使用该驱动包.

JDBC的工作原理

JDBC 为多种关系数据库提供了统一访问方式,作为特定厂商数据库访问API的一种高级抽象,它主要包含一些通用的接口类 ,JDBC的优势:

java访问数据库操作就是完全面向抽象接口编程的

开发数据库应用不用限定在特定的数据库厂商的API

程序的可移植性高

JDBC的使用

准备数据库驱动包

MySQL驱动包我们可以去mvnrepository.com 这个地址里下载到本地:

在索引上搜MySQL,我们点击第二个.

进去后,会有多个版本,这里都是可以用的,这里我们使用49版.

点击下载.

将驱动包添加到项目中

在我们的项目中创建一个文件夹,可以命名为lib,再将驱动包mysql-connector-java-5.1.49.jar复制到lib中.这个包是不用解压的,我们可以通过Java来将里面的接口和类引入进来:

创建lib文件:

将驱动包复制过来,直接ctrl+v

将包配置进项目中:

正式使用

这里我们在main方法内使用

1. 创建数据源

jdbc:mysql://127.0.0.1:3306/data?characterEncoding=utf8&useSSL=false 这一长串可以理解为让java知道数据库在哪里位置,这个每个人的地址都是不一样的,因人而异

java 复制代码
//1. 创建数据源 数据源里提供了数据库在哪里,用户名,密码
        DataSource dataSource = new MysqlDataSource();
        //数据库位置
        ((MysqlDataSource) dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/data?characterEncoding=utf8&useSSL=false");
        //用户名
        ((MysqlDataSource) dataSource).setUser("root");
        //密码
        ((MysqlDataSource) dataSource).setPassword("123456");

2. 连接数据库服务器

这里就好比要建立一个java与mysql传送操作的通道:

java 复制代码
//2. 连接数据库服务器
Connection connection = dataSource.getConnection();

3. 构造sql语句

这里用String来构造sal语句,再构造后要注意将sql语句转换为语句对象.

java 复制代码
        //3. 构造sql语句
        String sql = "insert into course values(11, '物理')";
        //需要将sql语句转换为语句对象
        PreparedStatement statement = connection.prepareStatement(sql);

这里有两个接口可以将sql语句转换,PreparedStatement, Statement. PrepareStatement是预处理后的结果,而Statement是没有预处理的,所以我们使用PrepareStatement

4. 将构造的sql语句传送给服务器执行

这里有两个方法可以使用,executeUpdate和executQuery,第一个得到的是执行sql的次数,第二个是结果集合

java 复制代码
        //4. 将构造好的sql传送给服务器执行
        //得到的是执行sql的次数
        int n = statement.executeUpdate();
        //得到的是执行sql的结果集
        statement.executeQuery();

5. 将资源释放

释放资源是从后往前释放:

java 复制代码
        //5. 将资源释放
        statement.close();
        statement.close();

最终代码

java 复制代码
public class Test {

    public static void main(String[] args) throws SQLException {

        //1. 创建数据源 数据源里提供了数据库在哪里,用户名,密码
        DataSource dataSource = new MysqlDataSource();
        //数据库位置
        ((MysqlDataSource) dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/data?characterEncoding=utf8&useSSL=false");
        //用户名
        ((MysqlDataSource) dataSource).setUser("root");
        //密码
        ((MysqlDataSource) dataSource).setPassword("123456");

        //2. 连接数据库服务器
        Connection connection = dataSource.getConnection();

        //3. 构造sql语句
        String sql = "insert into course values(15, '物理')";
        //需要将sql语句转换为语句对象
        PreparedStatement statement = connection.prepareStatement(sql);


        //4. 将构造好的sql传送给服务器执行
        //得到的是执行sql的次数
        int n = statement.executeUpdate();
        //得到的是执行sql的结果集
       // statement.executeQuery();

        //5. 将资源释放
        statement.close();
        statement.close();

    }


}

总结

  1. 获取数据源

  2. 创建连接通道

  3. 构造sql语句

  4. 将sql传送给服务器执行

  5. 释放资源


相关推荐
小吴编程之路6 小时前
MySQL 索引核心特性深度解析:从底层原理到实操应用
数据库·mysql
~莫子6 小时前
MySQL集群技术
数据库·mysql
凤山老林7 小时前
SpringBoot 使用 H2 文本数据库构建轻量级应用
java·数据库·spring boot·后端
就不掉头发7 小时前
Linux与数据库进阶
数据库
与衫7 小时前
Gudu SQL Omni 技术深度解析
数据库·sql
咖啡の猫7 小时前
Redis桌面客户端
数据库·redis·缓存
oradh7 小时前
Oracle 11g数据库软件和数据库静默安装
数据库·oracle
what丶k8 小时前
如何保证 Redis 与 MySQL 数据一致性?后端必备实践指南
数据库·redis·mysql
_半夏曲8 小时前
PostgreSQL 13、14、15 区别
数据库·postgresql
把你毕设抢过来8 小时前
基于Spring Boot的社区智慧养老监护管理平台(源码+文档)
数据库·spring boot·后端