为 MySQL 配置 Spring Boot

一则或许对你有用的小广告

欢迎加入小哈的星球 ,你将获得:专属的项目实战 / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论

  • 新项目:《从零手撸:仿小红书(微服务架构)》 正在持续爆肝中,基于 Spring Cloud Alibaba + Spring Boot 3.x + JDK 17...点击查看项目介绍 ;
  • 《从零手撸:前后端分离博客项目(全栈开发)》 2 期已完结,演示链接: http://116.62.199.48/ ;

截止目前, 星球 内专栏累计输出 63w+ 字,讲解图 2808+ 张,还在持续爆肝中.. 后续还会上新更多项目,目标是将 Java 领域典型的项目都整一波,如秒杀系统, 在线商城, IM 即时通讯,权限管理,Spring Cloud Alibaba 微服务等等,已有 2200+ 小伙伴加入学习 ,欢迎点击围观

开箱即用,Spring Boot 非常易于与 H2 数据库 一起使用。如果在类路径中找到 H2 数据库,Spring Boot 将自动在内存中设置一个 H2 数据库供您使用。但是如果你想使用 MySQL 怎么办?当然,Spring Boot 支持 MySQL 和许多其他流行的关系数据库。

之前,我写过关于 使用 Spring Boot 创建 Web 应用程序的 文章。假设我们要将此应用程序部署到生产环境中,并且我们决定使用 MySQL 作为数据库。将 Spring Boot 从 H2 更改为 MySQL 很容易。

MySQL配置

对于这个例子,我使用的是在我的 MacBook Pro 上本地安装的 MySQL。您需要定义一个数据库供您使用。对于这个例子,我想创建一个数据库供我使用。使用命令提示符,您可以使用以下命令登录 MySQL:


 mysql -u root

使用以下命令创建数据库。


 mysql -u root

如果你想使用一个新的数据库,你只需要使用这些命令。 MySQL 是一个非常健壮的数据库。 MySQL 的全部功能超出了本教程的范围。

MySQL 依赖项

首先,我们需要将 MySQL 数据库驱动程序添加到我们的项目中。您需要将以下依赖项添加到您的 Maven POM 文件中。

POM文件


 mysql -u root

弹簧启动属性

我们需要覆盖 Spring Boot 中默认设置的 H2 数据库属性。好的部分是,Spring Boot 仅在您不设置时设置默认数据库属性。所以,我们在配置MySQL的时候使用。 Spring Boot 不再设置 H2 数据库。

使用 Spring Boot 配置 MySQL 需要以下属性。您可以看到这些是非常标准的 Java 数据源属性。因为在我的示例项目中,我也在使用 JPA,所以我们也需要为 MySQL 配置 Hibernate。


 mysql -u root

注意 :如果这实际上是一个生产数据库,则不要告诉 Hibernate 使用 create-drop 选项。这告诉 Hibernate 在启动时重新创建数据库。绝对不是我们想要的行为。您可以将此属性设置为以下值:none、validate、update、create-drop。如果这实际上是一个生产数据库,您可能希望使用验证。

使用 MySQL 运行 Spring Boot

这就是在 Spring Boot 中使用 MySQL 需要更改的全部内容。现在启动项目时,Spring Boot 应用程序将使用 MySQL 作为数据库。

获取源代码

这篇文章的源代码可以在 GitHub 找到。您可以下载源代码并使用 Maven 构建项目。

相关文章