1、jdbc
Java Database Connectivity(JDBC)
是Java平台下的一个标准API,它定义了一组用于连接各种数据库系统、执行SQL语句和处理结果集的接口和类。使用JDBC API
,开发人员可以编写能够访问不同数据库系统的应用程序,而无需关注底层不同的数据库细节。
其相关内容 在java.sql
2、数据库驱动
其更像是对应java jdbc 标准的实现
JDBC驱动是一种实现了JDBC API的软件,它能够让Java应用程序以标准的方式访问不同的数据库;每个数据库都有其自己的JDBC驱动,这些驱动可以连接到相应的数据库,并提供了必要的方法来执行数据库操作
需要下载并安装 MySQL Connector/J
驱动程序。您可以从官方网站 MySQL :: Download Connector/J 下载最新版
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.23</version>
</dependency>
3、数据源
数据源技术是Java操作数据库的一个很关键技术,流行的持久化框架都离不开数据源的应用。
数据源提供了一种 简单获取数据库连接的方式,并能在内部通过一个 池的机制来复用数据库连接,这样就大大减少创建数据库连接的次数,提高了系统性能。
需要数据源的原因:由于使用jdbc建立连接和销毁太过于浪费资源,因此需要一套高效的与数据库建立连接的组件,那就是数据源,数据源可以创建连接池。
常见的有DBCP、C3P0、druid、hikariCP等等
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.6</version>
</dependency>
4、持久层框架
对象-关系映射(Object-Relational Mapping,简称ORM),面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式, 业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射。
对象-关系映射解释:
A . 简单:ORM以最基本的形式建模数据。比如ORM会将MySQL的一张表映射成一个Java类(模型),表的字段就是这个类的成员变量
B . 精确:ORM使所有的mysql数据表都按照统一的标准精确地映射成java类,使系统在代码层面保持准确统一
C . 易懂:ORM使数据库结构文档化。比如MySQL数据库就被ORM转换为了java程序员可以读懂的java类,java程序员可以只把注意力放在他擅长的java层面(当然能够熟练掌握MySQL更好)
D. 易用:ORM包含对持久类对象进行CRUD操作的API,例如create(), update(), save(), load(), find(), find_all(), where()等,也就是讲sql查询全部封装成了编程语言中的函数,通过函数的链式组合生成最终的SQL语句。通过这种封装避免了不规范、冗余、风格不统一的SQL语句,可以避免很多人为Bug,方便编码风格的统一和后期维护。
Mybatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层(半)ORM
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${project.version}</version>
</dependency>
mybaits对应的springboot 和mybatis版本
参考:
JDBC、datasource、连接池、数据库驱动、持久层框架之间的区别
全面了解Java连接MySQL的基础知识,快速实现数据交互
jdbc数据源跟连接池的关系问题?
Java中驱动是干什么用的