gpt4 book ai didi

kotlin - 如何在 micronaut 中使用特定于环境的变量?

转载 作者:行者123 更新时间:2023-12-02 13:03:25 25 4
gpt4 key购买 nike

一般来说,我是 micronaut 和服务器端编程的新手。不幸的是,micronaut 文档对我来说没有多大意义,因为我没有 Java 背景。很多像“ApplicationContext”这样的术语在英语中是有意义的,但我不知道如何在实践中使用它们。
尝试从一个非常基本的应用程序开始,该应用程序根据它所处的环境打印不同的配置(“localhost”、“dev”、“prod”)。
这是我的 Controller

@Controller("/")
class EnvironmentController {

// this should return "localhost", "DEV", "PROD" depending on the environment
@Get("/env")
@Produces(MediaType.TEXT_PLAIN)
fun env() = "???" // what should I put here ?

// this should return the correct mongodb connection string for the environment
@Get("/mongo")
@Produces(MediaType.TEXT_PLAIN)
fun mongo() = "???" // what should I put here ?
}
这是 application.yml .理想情况下,每个环境我都有 1 个 yml 文件
micronaut:
application:
name: myApp
server:
port: 8090

environment: localhost

mongodb:
uri: 'mongodb://localhost:27017'
Application.kt mn 生成的其余文件未受影响cli工具。如何设置每个环境参数,或在启动 micronaut 时将 yml 文件作为参数传递?
是否有任何约定?

最佳答案

您可以使用 -Dmicronaut.environments 指定环境,或通过在上下文构建器中指定它们 Micronaut.run在您的应用程序类中。
https://docs.micronaut.io/latest/guide/index.html#environments
然后例如 application-env.yml将被加载。
https://docs.micronaut.io/latest/guide/index.html#propertySource
文档对此非常清楚

关于kotlin - 如何在 micronaut 中使用特定于环境的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62999149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com