Java和Python各自链接MySQL的方法

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Java和Python各自链接MySQL的方法

前言:

如今在座的各位应该都是用过APP,网站等这些客户端吧。


如今大部分的客户端都是由三层模型组成——客户端,中间层,数据库。我们可以通过下图能更加清晰的了解这个结构。

image.png



一般我们使用一些网站查询我们想要的东西,这个流程大概就是通过客户端发送请求到服务器,再由服务器传回数据到客户端。然后我们就能得到我们所需要的数据。


通常我们得到的数据都是存储在数据库中的,我们有没有想过服务器是怎么获取的数据呢???


首先服务器得到请求后他会先给后端发送一个请求,然后再由后端来获取数据返回给服务器,服务器在传送到客户端。


在来问一下大家,后端是怎么得到数据库里面的数据呢???


这个也就是我们今天所要给大家讲的JDBC——使用后端语言链接数据库!!!


Java数据库的链接

环境配置

使用工具:

IDEA,MySQL-8.0,MySQL驱动(mysql-connector-java-8.0.27)等。


MySQL驱动的下载:


首先打开MySQL官网按照下图所示步骤下载和安装!

image.png



紧接着滑动页面到最下端。

image.png



打开后是这样的界面:

image.png


image.png


image.png



小伙伴们按照以上的方法下载安装即可。


注:因为MySQL官网页面会不断的更新,一些小伙伴可能找不到,大家只要记住找到倒数第三张图片上面的那个版本驱动即可下载!


MySQL驱动的配置:


首先我们需要在我们的IDEA里面新建一个项目,然后我们在src的同级目录下创建一个lib文件夹,将我们下载好的MySQL驱动解压到lib下面即可。


[^注意:在lib文件夹下面的文件是 jar类型的,并不是zip类型的文件!!!]:

image.png



当驱动放在指定位置后我们再在IDEA里面找到MySQL驱动,按照下图步骤慢慢完善即可:

image.png





点击即可!!!


到这里Java MySQL的驱动基本上算是配置好了,接下来就是要进行使用Java代码链接MySQL数据库了!!!

代码实现

在Java中有两个API可以链接数据库,分别是:Driver和DriverManager。


1.Driver的链接

首先创建驱动对象:


Driver driver = new com.mysql.cj.jdbc.Driver();


使用driver进行链接:


Connection conn = driver.connect(url,info);


完整代码:


   

public static void main(String[] args) throws SQLException {
            Driver driver = new com.mysql.cj.jdbc.Driver();
            String url = "jdbc:mysql://localhost:3306/数据库表名";
            Properties info = new Properties();
            info.setProperty("user","root");
            info.setProperty("password","数据库密码");
            Connection conn = driver.connect(url,info);
            System.out.println(conn);
    }


运行结果:com.mysql.cj.jdbc.ConnectionImpxxxxxxx,表示成功运行!!!


2.DriverManager的链接

和Driver一样创建驱动:


Driver driver = new com.mysql.cj.jdbc.Driver();


数据库的注册:


DriverManager.registerDriver(driver);//进行数据库注册


我们选用DriverManager三种链接方法里面的其中一个比较简单的连接方法:


Connection conn = DriverManager.getConnection(url,user,password);


完整代码:


public static Connection getConnection() throws Exception{
        Driver driver = new com.mysql.cj.jdbc.Driver();
        String url = "jdbc:mysql://localhost:3306/数据库表名";
        String user = "root";
        String password = "数据库密码";
        DriverManager.registerDriver(driver);//进行数据库注册
        Connection conn = DriverManager.getConnection(url,user,password);
        return conn;
    }
    //关闭数据库的链接
    public  static void closeREsource(Connection conn, PreparedStatement ps){
        try {
            ps.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        try {
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }



运行结果:com.mysql.cj.jdbc.ConnectionImpxxxxxxx,表示成功运行!!!


补充:DriverManager是Driver的升级版,Driver是Java链接MySQL最基础的方法。因为Driver不能解耦,所以逐渐被DriverManager所替代!


Java对数据库的链接就到这里了,接下来可能就带给大家Java对数据库表的增删改查了。


Python数据库的链接

介绍了Java的数据库链接,我们在来看看Python是怎么链接MySQL的吧。


环境配置

**使用工具:**Pycharm,MySQL—8.0,pymysql库。


pymysql的下载:


方法1:打开cmd,输入 pip install pymysql。即可安装完毕。


方法2:在Pycharm里面下载该库。(我博客之前写过怎么用Pycharm下载各种Python的库,不会的小伙伴可以去看看哦。)


环境配置完毕,接下来我们就进行具体的代码操作吧!!!


代码实现

首先导入pymysql。


import pymysql


使用pymysql里面的功能方法conntect链接MySQL并创建对象。


conn = pymysql.connect(host='localhost',user = "root",passwd = "数据库密码")


补充:connect的参数和作用!


参数 功能

host 服务器的主机地址。

port mysql数据库的端口号。

user 用户名

password 密码

database 操作的数据库名

charset 操作数据库使用的编码个数

接着使用conn获取游标。


cursor=conn.cursor()


紧接着使用cursor对MySQL进行操作。


cursor.execute(sql语句)


最后关闭游标和数据库的链接。


cursor.close()#先关闭游标
conn.close()#再关闭数据库连接


完整代码:


import pymysql
#打开数据库连接,不需要指定数据库,因为需要创建数据库
#1. host : 服务器的主机地址
#2. port :mysql数据库的端口号
#3. user : 用户名
#4. password : 密码
#5. database :操作的数据库名
#6. charset : 操作数据库使用的编码个数
conn = pymysql.connect(host='localhost',user = "root",passwd = "数据库密码")
#获取游标
cursor=conn.cursor()
cursor.execute('SQL语句')
cursor.close()#先关闭游标
conn.close()#再关闭数据库连接
print('链接成功!')
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
关系型数据库 MySQL Java
【MySQL+java+jpa】MySQL数据返回项目的感悟
【MySQL+java+jpa】MySQL数据返回项目的感悟
44 1
|
2月前
|
关系型数据库 MySQL Java
【IDEA】java后台操作mysql数据库驱动常见错误解决方案
【IDEA】java后台操作mysql数据库驱动常见错误解决方案
73 0
|
2月前
|
存储 关系型数据库 MySQL
环比、环比增长率、同比、同比增长率 ,占比,Mysql 8.0 实例(最简单的方法之一)(sample database classicmodels _No.2 )
环比、环比增长率、同比、同比增长率 ,占比,Mysql 8.0 实例(最简单的方法之一)(sample database classicmodels _No.2 )
102 1
|
25天前
|
关系型数据库 MySQL
Mysql 中日期比较大小的方法有哪些?
在 MySQL 中,可以通过多种方法比较日期的大小,包括使用比较运算符、NOW() 函数、DATEDIFF 函数和 DATE 函数。这些方法可以帮助你筛选出特定日期范围内的记录,确保日期格式一致以避免错误。
|
2月前
|
SQL Java 关系型数据库
java连接mysql查询数据(基础版,无框架)
【10月更文挑战第12天】该示例展示了如何使用Java通过JDBC连接MySQL数据库并查询数据。首先在项目中引入`mysql-connector-java`依赖,然后通过`JdbcUtil`类中的`main`方法实现数据库连接、执行SQL查询及结果处理,最后关闭相关资源。
|
2月前
|
关系型数据库 MySQL Java
java协程操作mysql数据库
本文介绍了如何在Java项目中使用虚拟线程和协程操作MySQL数据库,并通过代码示例展示了如何利用CompletableFuture实现非阻塞数据库连接和操作。
29 2
java协程操作mysql数据库
|
2月前
|
关系型数据库 MySQL 数据库
Mysql学习笔记(四):Python与Mysql交互--实现增删改查
如何使用Python与MySQL数据库进行交互,实现增删改查等基本操作的教程。
67 1
|
2月前
|
Java 关系型数据库 MySQL
springboot学习四:springboot链接mysql数据库,使用JdbcTemplate 操作mysql
这篇文章是关于如何使用Spring Boot框架通过JdbcTemplate操作MySQL数据库的教程。
33 0
springboot学习四:springboot链接mysql数据库,使用JdbcTemplate 操作mysql
|
Java 关系型数据库 Linux
java 实现 mysql 数据库导出与导入(适合linux和windows)
</pre>备份<p></p><p></p><pre name="code" class="html">import java.io.BufferedReader; import java.io.FileOutputStream; import java.io.InputStream; import java.io
2568 0
|
11天前
|
Java 开发者
Java多线程编程中的常见误区与最佳实践####
本文深入剖析了Java多线程编程中开发者常遇到的几个典型误区,如对`start()`与`run()`方法的混淆使用、忽视线程安全问题、错误处理未同步的共享变量等,并针对这些问题提出了具体的解决方案和最佳实践。通过实例代码对比,直观展示了正确与错误的实现方式,旨在帮助读者构建更加健壮、高效的多线程应用程序。 ####