【问题标题】:Do I need mysql dependency in Spring Initializr if I gonna use mysql in separate docker container?如果我要在单独的 docker 容器中使用 mysql,我是否需要 Spring Initializr 中的 mysql 依赖项?
【发布时间】:2020-02-04 23:01:20
【问题描述】:

我要创造

  1. Spring Boot MVC / JPA / Data CRUD 项目 - 简单的 REST 服务。放入容器中
  2. 在 mysql DB 中存储一些数据。放入单独的容器中
  3. 使用 docker compose 将 1 和 2 一起添加
  4. 使用断路器模式(Hystrix?):@Retry & fallback 方法同时存储到 DB
  5. 将使用 Spring Initializr

为此我需要使用:

  1. 春季网络
  2. Spring 数据 JPA

Spring Initializr 中的选项。

问题是:我需要使用MySQL Driver: MySQL JDBC and R2DBC driver. 选项吗?或者单独容器中的mysql可以吗?

【问题讨论】:

  • 无论是在同一环境中使用 MySQL 还是在不同的 Docker 容器中使用 MySQL,您的应用程序都应该与 DBMS 进行通信。这就是为什么您需要应用程序类路径中的“MySQL 驱动程序”。因此,无论 MySQL 服务器在何处运行,您的应用程序都必须具有 MySQL 驱动程序依赖项。这适用于所有 DBMS,并且每个 DBMS 都有自己的驱动程序,具有特定的配置集,仅用于连接特定的 DBMS。

标签: mysql spring-boot docker docker-compose spring-initializr


【解决方案1】:

正如评论中解释的那样,该条目的名称中有“Driver”,表示该组件是“客户端部分”,以确保您的应用程序可以与 MySQL 服务器通信(无论是在单独的容器中,您机器上的本地实例或任何地方)。

start.spring.io 不提供任何形式的服务。当它在应用程序本身中嵌入某些内容时,该条目的名称中会带有“Embedded”以表明这一点。

【讨论】:

    猜你喜欢
    • 2020-05-21
    • 1970-01-01
    • 1970-01-01
    • 2012-04-04
    • 1970-01-01
    • 2017-02-20
    • 2017-09-07
    • 2022-06-10
    • 2015-02-15
    相关资源
    最近更新 更多