MySQL之JDBC(一)

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: MySQL之JDBC

💕"我像离家的孤儿,回到了母亲的怀抱,恢复了青春。"💕

作者:Mylvzi

文章主要内容:MySQL之JDBC

 一.什么是JDBC?

 JDBC(Java Database Connectivity)是Java编程语言的一种API(应用程序接口),用于连接和操作各种类型的数据库。它允许Java应用程序通过标准化的方式访问数据库,并执行诸如查询、更新和管理数据等操作

 JDBC编程就是通过Java 代码来操纵数据库  

 数据库编程, 需要数据库服务器提供一些API供程序员使用  ,不同的sql服务器有不同的API,那我们mysql,oracle,sqlserver都有自己的API,那这些API需要我们都去学习么?不需要,因为Java凭借其市场份额,和数据库厂商制定了一套数据库编程规范,即所有的数据库服务器的API都能通过这套API的规范来实现

 具体是怎么实现的呢?数据库的厂商设计出了他们专属的"驱动器",在我们些项目的时候,可以把使用到的数据库服务器的驱动器安装到对应的包下,就可以将数据库的API转化为规范的API

 所谓的驱动器其实是一个驱动程序,它本质上是一个软件,是由厂商提供的,作用类似于"转接头",将自己原生的API转接为JDBC对应的API

二.安装驱动程序

 如果想在项目中使用MySQL就需要安装MySQL的驱动程序,并将其放到对应的包之下

下面以mysql为例

首先要先去安装驱动包,可以去中央仓库进行下载(方便)

Maven Repository: mysql » mysql-connector-java » 5.1.48 (mvnrepository.com)

注意:下载的驱动器的版本要和你的MySQL服务器相对应,我的MySQL服务器是5,所以下载的驱动器也是5版本

1.先在src下创建一个"lib"的包(引入第三方包常用名称)

2.在lib包之下复制刚才下载的驱动器

导入之后右键点击,然后再点击最下面一行Add as Library

三.开始编码!!!

 以上都是准备工作,接下来开始进行编码

 总体来说分为5步

1.准备数据源

 进行数据库编程需要先进行数据准备,数据准备是通过DataSource这个接口实现的,数据源的准备分为四步

  • 实例化实现DataSource接口的对象
  • 建立URL
  • 设置用户名
  • 设置密码

1.实例化对象

代码

DataSource dataSource = new MysqlDataSource();

源码:

2.建立URL

代码

((MysqlDataSource) dataSource).setURL("jdbc:mysql://127.0.0.1:3306/java109?characterEncoding=utf8&useSSL=false");

解析

 这么长的字符串大家不用记忆、下次使用的时候直接复制粘贴即可,这里也叫给大家一个记忆的例子,整个字符串的逻辑还是很简单的

3.设置用户民 和密码

代码

((MysqlDataSource) dataSource).setUser("root");
        ((MysqlDataSource) dataSource).setPassword("123456");

root是MySQL默认的自带的用户,密码是登录MySQL的密码

完整代码:

// 1.准备数据源  实例化对象 建立URL  设置用户名和密码
        DataSource dataSource = new MysqlDataSource();
        ((MysqlDataSource) dataSource).setURL("jdbc:mysql://127.0.0.1:3306/java109?characterEncoding=utf8&useSSL=false");
        ((MysqlDataSource) dataSource).setUser("root");
        ((MysqlDataSource) dataSource).setPassword("123456");

 对于准备阶段,发现在设置url,user,password的时候都对数据源dataSource进行的强转,实际上不强转也可以进行接下来的操作,此处强转是为了降低代码的耦合性。

 代码的耦合性是指代码之间的影响性大小,也就是当你只修改代码的一部分时,要修改的其他代码很多,则代码的耦合性就高,反之则低。代码的耦合性 越低越好,当你再次需要修改部分代码时,对整体的影响小

 此处强转就是为了降低代码的耦合性,强转之后当你需要利用其他数据库进行编程时需要修改的部分只有强转的类型,这样代码之间的耦合性就降低了

以上只是准备工作  还并没有和mysql进行通信  接下来进行通信

MySQL之JDBC(一)+https://developer.aliyun.com/article/1413552

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
Java 关系型数据库 MySQL
mysql5.7 jdbc驱动
遵循上述步骤,即可在Java项目中高效地集成MySQL 5.7 JDBC驱动,实现数据库的访问与管理。
2837 1
|
SQL druid Java
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
225 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
370 0
|
SQL 分布式计算 关系型数据库
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
229 0
|
SQL 分布式计算 关系型数据库
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
279 0
|
前端开发 关系型数据库 MySQL
com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver 的区别
这篇文章讨论了`com.mysql.jdbc.Driver`和`com.mysql.cj.jdbc.Driver`两个MySQL驱动类的区别,指出`com.mysql.jdbc.Driver`适用于MySQL 5的`mysql-connector-java`版本,而`com.mysql.cj.jdbc.Driver`适用于MySQL 6及以上版本的`mysql-connector-java`。文章还提到了在实际使用中如何根据MySQL版本选择合适的驱动类。
com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver 的区别
|
关系型数据库 MySQL Java
【Azure 应用服务】App Service 无法连接到Azure MySQL服务,报错:com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
【Azure 应用服务】App Service 无法连接到Azure MySQL服务,报错:com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
582 0
|
Java 关系型数据库 数据库连接
实时计算 Flink版操作报错之在使用JDBC连接MySQL数据库时遇到报错,识别不到jdbc了,怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
Java 关系型数据库 MySQL
JDBC实现往MySQL插入百万级数据
JDBC实现往MySQL插入百万级数据
224 0
|
SQL Java 关系型数据库
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
639 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)

推荐镜像

更多