文章目录
- JDBC的由来
- JDBC的好处
- JDBC核心API的介绍
- JDBC会用到的包
- JDBC四个核心对象
- JDBC访问数据库的步骤
客户端操作MySQL数据库的方式
-
使用第三方客户端来访问MySQL:SQLyog、Navicat
-
使用MySQL自带的命令行方式
-
通过Java来访问MySQL数据库,今天要学习的内容
如何通过Java代码去操作数据库呢?
Java中给我们提供专门的一套技术,可以通过其中的某些类和接口操作任何的数据库,这个技术就是今天要学习的JDBC。
什么是JDBC:Sun公司为了简化、统一对数据库的操作,定义了一套java操作数据库的接口的规范,称之为JDBC。
JDBC的全称为:java database connection
(java和 数据库的连接 ) 就是使用java代码来操作数据库。
JDBC的作用:Java通过JDBC就可以操作数据库
JDBC的由来
java程序依赖于jdk,jdk和数据库是2个不同的应用程序,那他们是怎么进行访问的呢?
要想搞清楚这个问题,我们必须了解下电脑是如何和其他硬件设备交互的。假设我们电脑安装完系统之后是一个无驱动的操作系统。那么当我们电脑想播放声音,即安装音响,必须得安装声卡驱动。同时电脑想和u盘硬件进行交互,也必须在电脑上安装对应的驱动。如果驱动安装失败,很显然他们是不能正常的交互的。这个安装驱动的其实就是为了定义他们两个相互交互的规则。只有统一了规则,才能交互。
同理:java程序想和数据库进行交互,也必须得安装数据库驱动,这样才能交互。但是,我们数据库有多种,这样就会导致不同的数据库具备不同的数据库驱动。
从而会导致在开发中作为程序员由于安装不同的数据库驱动而浪费很多时间,同时和数据库交互的java代码也得重新书写,这样都会导致效率很低。所以说,sun公司就会制定一套规则,这套规则就是用来java程序连接数据库的,然后各大数据库厂商只需要实现这个规则即可。这个规则就是jdbc技术,即接口。
换句话就是说,就是数据库厂商使用sun公司提供的接口,然后作为java程序员实现接口中的方法即可。接口中的方法体由具体的数据库厂商来实现。
JDBC的好处
- 我们只需要会调用JDBC接口中的方法即可,使用简单
- JDBC有关的类和接口:都在java.sql 和 javax.sql(扩展包) 包下
- 方法体由具体的数据库厂商来完成的
- 使用同一套Java代码,进行少量的修改就可以访问其他JDBC支持的数据库
JDBC核心API的介绍
JDBC会用到的包
java.sql
:JDBC访问数据库的基础包,在JavaSE中的包。如:java.sql.Connection
javax.sql
: JDBC访问数据库的扩展包- 数据库的驱动,各大数据库厂商来实现。如:MySQL的驱动:
com.mysql.jdbc.Driver
JDBC四个核心对象
这几个类都是在 java.sql
包中
- DriverManager(类): 数据库驱动管理类。这个类的作用:1)注册驱动; 2)创建java代码和数据库之间的连接,即获取Connection接口;
- Connection(接口): 是一个接口, 建立数据库连接的一个接口。作用:建立数据库和java代码之间的连接。表示与数据库创建的连接
- Statement(接口)、PreparedStatement(接口) (解决安全隐患问题,比如sql注入的问题): 数据库操作,向数据库发送sql语句。执行SQL语句的对象
- ResultSet: 结果集或一张虚拟表。 Statement 发送sql语句,得到的结果 封装在 ResultSet 中。
JDBC访问数据库的步骤
-
由DriverManager注册驱动程序
-
创建和数据库的连接对象Connection
-
由客户端发送SQL语句给服务器执行,SQL语句封装成Statement对象
-
查询到的结果集封装成ResultSet对象
-
在客户端可以从ResultSet中取出数据,处理结果集
-
释放资源,关闭连接对象