news 2026/5/14 0:12:12

Springboot项目本地连接并操作MySQL数据库

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Springboot项目本地连接并操作MySQL数据库

目录

前提

准备工作

用cmd在本地创建数据库、表:

1.创建springboot项目(已有可跳过)

2.编辑Mybatis配置

3.连接数据库

4.创建模型类,用于与数据库里的数据表相连

5.创建接口mapper,定义对数据库的操作

6.创建controller类,来处理前端发送的请求

7.创建xml配置文件,编写SQL映射语句

前提

1.已有springboot项目,安装有jdk(17版本以上)、MySQL

2.下载navicat软件用于编辑数据库(也可以是其他类似软件)

3.下载apifox软件用于创建接口并测试连接(按需求选择)

准备工作

用cmd在本地创建数据库、表:

  1. 登录到MySQL:mysql -u 用户名 -p
  2. 使用CREATE DATABASE语句来创建一个新的数据库,例如,要创建一个名为my_database的数据库:CREATE DATABASE my_database
  3. 在创建表之前,你需要先选择你刚刚创建的数据库,使用USE语句来选择数据库:USE my_database;
  4. 使用CREATE TABLE语句来定义表的结构,例如,要创建一个简单的用户表,你可以执行:

CREATE TABLE users (

id INT AUTO_INCREMENT PRIMARY KEY,

username VARCHAR(255) NOT NULL,

email VARCHAR(255) NOT NULL,

created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP

);

这个命令创建了一个名为users的表,它包含四个字段:id(自增主键)、username(非空字符串)、email(非空字符串)和created_at(时间戳,默认为当前时间)。

1.创建springboot项目(已有可跳过)

项目结构:

2.编辑Mybatis配置

xml配置文件用于创建编辑数据库的基础命令,向数据表插入数据、更新数据、删除数据等,注意名字要相对应。Java文件声明数据库编辑方法,如搜索账户是否存在

3.连接数据库

1)打开navicat,点击“文件”-> “新建连接”->“MySQL”,或者直接点击下面的“连接”->“MySQL”,输入本地创建的数据库名称,用户名(默认为root),密码,端口(默认3306)

连接成功后会显示本地的数据库,点击“文件”->“新建”->“表”创建数据表,双击表可查看数据表内容。

2)springboot项目连接数据库:

  • Username:用户名
  • Password:密码
  • url:数据库路由,格式一般为“jdbc:mysql://localhost:3306/******(数据表名称)useUnicode=true&characterEncoding=utf8&useSSL=false”
  • driver-class-name:驱动java数据库连接程序(指JDBC,项目通过jdbc api与数据库进行交互)

4.创建模型类,用于与数据库里的数据表相连

  • @TableName(“数据表名”):连接的数据表表名
  • @Entity:将java标记为实体类,从而允许这些类映射到数据库中的表
  • @Id:JPA(Java Persistence API)规范中的注解,标识实体类中的主键字段
  • @TableId:MyBatis-Plus 框架中的注解,用于标识实体类的主键字段

注意:@Id和@TableId二者作用相同,按项目所包含依赖选择其一即可

右键->“生成”->“构造函数”setter和getter

5.创建接口mapper,定义对数据库的操作

6.创建controller类,来处理前端发送的请求

  • @CrossOrigin(origin=“*”):允许所有来源访问该url,解决本地访问跨域问题
  • @RestController:@Controller和@ResponseBody的组合,它告诉Spring这个类是一个控制器(Controller),并且所有的方法返回的内容都直接写入HTTP响应体中,而不是解析为跳转路径,这通常用于RESTful Web服务,其中返回的数据是JSON或XML等格式。
  • @RequestMapping(“/api/***”):用于将HTTP请求映射到特定的处理器方法或处理器类上
  • @Autowired:用于自动装配Spring容器中的bean, 当Spring发现@Autowired注解时,它会尝试查找匹配的bean来注入到被注解的字段、构造函数参数或setter方法的参数中。如果找到多个匹配的bean,并且没有指定哪个bean应该被注入,那么将会抛出一个异常。如果找不到匹配的bean,并且该字段是可选的(即,它是null可以接受的类型,比如接口或接口的实现类的字段),那么它将不会被注入,而是保持为null。
  • @GetMapping:定义请求方式为Get方法(也可以是post方法PostMapping)

7.创建xml配置文件,编写SQL映射语句

id:映射方法名

namespace:命名空间,指向mapper包里面的相同名字的java文件

UserMapper.java:

  • @Mapper指明是一个mapper接口
  • public interface UserMapper extends BaseMapper:UserMapper接口继承自BaseMapper,这意味着它自动拥有了BaseMapper中定义的所有方法,这些方法都是针对UserInfo类型的数据进行操作的。这大大减少了编写重复性代码的需要。
  • 定义了一些自定义的方法,如selectByAccount、existsByAccount、insertUserToken等
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/13 19:56:43

如何快速掌握LX音乐播放器:面向新手的完整使用指南

如何快速掌握LX音乐播放器:面向新手的完整使用指南 【免费下载链接】lx-music-desktop 一个基于 electron 的音乐软件 项目地址: https://gitcode.com/GitHub_Trending/lx/lx-music-desktop 在当今数字音乐时代,找到一款真正免费且功能全面的音乐…

作者头像 李华
网站建设 2026/5/10 11:07:46

WaveTools鸣潮工具箱:一键解锁游戏性能的终极利器

WaveTools鸣潮工具箱:一键解锁游戏性能的终极利器 【免费下载链接】WaveTools 🧰鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools 还在为《鸣潮》游戏卡顿而烦恼?想要轻松管理多个游戏账号?WaveTools鸣…

作者头像 李华
网站建设 2026/5/10 4:29:51

ZLUDA技术解析:让Intel显卡无缝运行CUDA生态

ZLUDA技术解析:让Intel显卡无缝运行CUDA生态 【免费下载链接】ZLUDA CUDA on Intel GPUs 项目地址: https://gitcode.com/GitHub_Trending/zl/ZLUDA 还在为Intel显卡无法运行CUDA应用而困扰吗?ZLUDA作为一款突破性的兼容层工具,成功打…

作者头像 李华
网站建设 2026/5/10 15:29:39

TuneFree音乐播放器:解锁付费音乐资源的5大核心优势

TuneFree音乐播放器:解锁付费音乐资源的5大核心优势 【免费下载链接】TuneFree 一款基于Splayer进行二次开发的音乐播放器,可解析并播放网易云音乐中所有的付费资源。 项目地址: https://gitcode.com/gh_mirrors/tu/TuneFree TuneFree是一款革命性…

作者头像 李华
网站建设 2026/5/10 8:08:31

PDF-Extract-Kit教育场景应用:试卷题目自动识别教程

PDF-Extract-Kit教育场景应用:试卷题目自动识别教程 1. 引言 1.1 教育数字化转型中的痛点 在当前教育信息化快速发展的背景下,教师和教研人员每天需要处理大量纸质或PDF格式的试卷、习题集和教学资料。传统的人工录入方式不仅效率低下,而且…

作者头像 李华