Java和Python各自链接MySQL的方法

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS AI 助手,专业版
简介: 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('链接成功!')
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
6月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
500 1
|
7月前
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
242 2
|
7月前
|
调度 Python
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
200 0
|
7月前
|
传感器 大数据 API
Python数字限制在指定范围内:方法与实践
在Python编程中,限制数字范围是常见需求,如游戏属性控制、金融计算和数据过滤等场景。本文介绍了五种主流方法:基础条件判断、数学运算、装饰器模式、类封装及NumPy数组处理,分别适用于不同复杂度和性能要求的场景。每种方法均有示例代码和适用情况说明,帮助开发者根据实际需求选择最优方案。
329 0
|
7月前
|
Python
Python字符串center()方法详解 - 实现字符串居中对齐的完整指南
Python的`center()`方法用于将字符串居中,并通过指定宽度和填充字符美化输出格式,常用于文本对齐、标题及表格设计。
|
6月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
890 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
7月前
|
存储 关系型数据库 MySQL
MySQL数据库中进行日期比较的多种方法介绍。
以上方法提供了灵活多样地处理和对比MySQL数据库中存储地不同格式地日子信息方式。根据实际需求选择适当方式能够有效执行所需操作并保证性能优化。
681 10
|
7月前
|
机器学习/深度学习 数据采集 算法
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
384 4
|
6月前
|
算法 调度 决策智能
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
171 0
|
7月前
|
机器学习/深度学习 数据采集 TensorFlow
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
384 0

推荐镜像

更多