我在 dropwizard 中有一个带有后端代码的简单 CRUD 应用程序。整个应用程序只包含简单的资源类和 crud 操作,除了涉及一些业务逻辑的情况。
我试图将其提取到服务中,而不是将其放入资源类本身。但为此,我的服务将需要一个按需 jdbi 连接来访问数据并执行其操作。
我所有的连接字符串和配置值都在 YML 文件中。由于此应用程序将在具有不同 yml 文件的不同服务器上运行,因此我不想硬编码 yml 文件名以便再次读取它,以获取连接字符串并这样做。
我如何实现这一目标?
我在 dropwizard 中有一个带有后端代码的简单 CRUD 应用程序。整个应用程序只包含简单的资源类和 crud 操作,除了涉及一些业务逻辑的情况。
我试图将其提取到服务中,而不是将其放入资源类本身。但为此,我的服务将需要一个按需 jdbi 连接来访问数据并执行其操作。
我所有的连接字符串和配置值都在 YML 文件中。由于此应用程序将在具有不同 yml 文件的不同服务器上运行,因此我不想硬编码 yml 文件名以便再次读取它,以获取连接字符串并这样做。
我如何实现这一目标?
你能检测出你所处的环境吗?
如果是这样,你能做类似 ${environment}.yml 的事情吗?
apache上有配置项目可能会有所帮助。
否则,是否是您要运行的 in dev 的情况
java -jar app.jar server dev.yml
你想在产品中运行java -jar app.jar server prod.yml
吗?我想你在每个环境中都有单独的守护进程。因此,如果您以这种方式配置它们,这些环境将选择正确的配置。
否则,如果属性名称相同,但它们的值不同,并且您在正确的环境中选择了正确的 yml,那么事情应该可以工作。
如果我没有解决您的问题,您能否再详细说明您的问题?