【问题标题】:Jhipster: Making a WAR file with client-configurable DatasourceJhipster:使用客户端可配置的数据源制作 WAR 文件
【发布时间】:2018-03-06 00:34:32
【问题描述】:

我的开发团队正在开发一个 Web 应用程序,并指派我研究如何使用可配置的数据源制作客户端 WAR 文件。

这是我们的第一个商业项目:

语言:Java / JavaScript(jQuery 和 AngularJS)/ HTML / CSS

数据库:MySQL

开发工具:IntelliJ

自动化系统:Gradle

应用程序生成器:JHipster

版本控制:SourceTree

此时,我们的客户已同意使用我们在安全 USB 中提供的可执行文件(目前为 WAR 文件)将应用程序简单地部署在他自己的 Amazon Web Server 的 MySQL 数据库中。

到目前为止,可以使用 JHipster 制作 WAR 文件并在我们的内部服务器上毫无问题地部署。但是,我们在 src/main/resources/config 下的 YML 文件中硬编码了所有数据库连接 (JDBC) 内容。

当然,我们的客户有一个具有完全不同架构、用户名和密码的数据库。而且我们要给他的 WAR 文件不能执行,除非里面的数据源规范与他的匹配。

因为无法从 WAR 中提取源代码,所以客户端不会从他的一端修改数据源。同时,他也不喜欢给我们提供数据源信息。

因此,我们要提出,引用,一个可执行文件,允许他在其 AWS 上第一次执行数据源时对其进行配置

有没有一种方法可以在不偏离当前部署方法(WAR 文件)太远的情况下实现这一目标?

【问题讨论】:

  • 'Client-side WAR file' 已经是自相矛盾的用语了。
  • 所以我怀疑。我什至在想 JAR 文件是否是答案,但这意味着使应用程序脱机

标签: mysql spring-boot jhipster


【解决方案1】:

这里没有特定于 JHipster 的内容,这纯粹是一个 Spring Boot 问题。您可以在 war 文件外部提供 application-prod.yml,也可以将其保留在内部,但使用引用客户端服务器中定义的环境变量的占位符。

更多详情,请阅读 Spring Boot 文档https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

【讨论】:

    猜你喜欢
    • 2018-09-25
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    • 2018-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多