从0开始教你,如何进行前后端的数据库(MySQL)连接

引言

很多小伙伴会好奇,如何从零开始实现一个完整的前后端项目,并将数据存储在 MySQL 数据库中,然后我们可以进行实时的更新,查询,修改,增加删除。

比如一个简单的留言板系统,用户可以通过前端提交留言,后端将数据存储到 MySQL 中,再通过 API(如axios) 将数据展示在前端页面上。又或者一个视频留言系统,允许用户上传视频和评论,这些功能都需要前后端与数据库的协作。本篇博客将通过具体的例子,从基础出发,带你一步步完成从数据库搭建到前后端数据交互的全过程。

无论你是初学者还是有一定基础的开发者,这篇文章都能帮助你掌握前后端与数据库连接的核心技能。


一、环境准备(具体的各环境安装细节会在下节单拎出来讲解)

在开始之前,需要确保以下环境已经准备就绪:

  1. 安装 MySQL

    • 前往 MySQL 官方网站 下载并安装 MySQL。
    • 在安装过程中,设置一个安全的 root 用户密码,并选择开发者默认配置。
    • 安装完成后,启动 MySQL 服务,使用命令行或图形界面工具(如 MySQL Workbench,博主用的是Navicat界面化工具)连接数据库。
  2. 安装 Node.js

    • 前往 Node.js 官方网站 下载并安装 LTS 版本。

    • 安装完成后,在终端输入以下命令,确认安装成功:

      node -v
      npm -v
      
  3. 安装 Vue 开发环境

    • 使用 Vue CLI 快速搭建项目。首先,安装 Vue CLI:

      npm install -g @vue/cli
      
    • 创建一个 Vue 项目:

      vue create frontend
      

      根据提示选择默认配置。

  4. 测试工具

    • 推荐使用 Postman 或 curl 测试后端 API,方便调试接口。(可略)

### 前后端实现数据库连接的方法 #### 数据库连接的基本流程 为了使前后端能够顺利访问并操作数据库,通常需要完成以下几个核心环节:配置数据库连接参数、编写后端接口逻辑以及前端调用这些接口。以下是具体的实现方法。 --- #### 后端数据库连接配置与代码示例 ##### Spring Boot 配置方式 在 `application.yml` 或 `application.properties` 文件中可以配置数据库连接信息[^3]。以下是一个典型的 `application.yml` 配置: ```yaml spring: datasource: url: jdbc:mysql://127.0.0.1:3306/database?useSSL=false&serverTimezone=UTC username: user password: 000000 driver-class-name: com.mysql.cj.jdbc.Driver ``` 其中: - **url**: 数据库地址和名称。 - **username/password**: 登录数据库的用户名和密码。 - **driver-class-name**: JDBC驱动类名。 对于更复杂的场景,也可以使用 `application.properties` 的形式来配置[^4]。 --- ##### Python Flask + MySQL 实现 在 Python 中可以通过 Flask 和 pymysql 库实现后端数据库的交互。以下是一个简单的 POST 请求处理函数[^2]: ```python from flask import Flask, request, jsonify import pymysql app = Flask(__name__) @app.route('/submit-data', methods=['POST']) def submit_data(): data = request.json try: # 连接数据库 conn = pymysql.connect( host='127.0.0.1', user='root', passwd='180805Wmy', port=3306, db='weldingdata', charset='utf8' ) cur = conn.cursor() # SQL语句 sql = "INSERT INTO number_data (number) VALUES (%s)" number = data.get('数字') # 执行SQL语句 cur.execute(sql, (number)) conn.commit() cur.close() conn.close() return jsonify({'message': 'Data inserted successfully.'}) except pymysql.Error as e: print(f"Error {e.args[0]}: {e.args[1]}") conn.rollback() return jsonify({'error': 'Database operation failed.'}), 500 ``` 此代码展示了如何通过 RESTful API 接收前端传来的 JSON 数据,并将其存储到 MySQL 数据库中。 --- #### 前端调用后端接口的方式 前端可以通过 AJAX 技术向后端发起请求。例如,使用 JavaScript 调用上述 `/submit-data` 接口: ```javascript fetch('http://localhost:5000/submit-data', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ 数字: 42 }) }).then(response => response.json()) .then(data => console.log(data)); ``` 这段代码实现了向前端提交数据的功能,而后端会负责将该数据写入数据库。 --- #### 自动化工具辅助开发 TableGo 是一种强大的自动化工具,可以帮助开发者快速生成项目框架及前后端代码[^5]。它支持多种主流数据库(如 MySQL、Oracle),并通过模板定制满足特定需求。利用此类工具可以显著减少手动编码的工作量,从而专注于业务逻辑的设计与优化。 --- ### 总结 无论是采用 Java Spring Boot 还是 Python Flask 架构,都需要先正确配置数据库连接字符串;随后构建相应的 HTTP 接口供前端调用;最后由前端借助 AJAX 完成跨域通信过程。此外,引入像 TableGo 这样的高效工具将进一步简化整个开发周期。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值