gpt4 book ai didi

grails - 是否可以以编程方式构建 grails 配置属性键?

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

使用 grailsApplication.config.myapp.something 访问 Config.groovy 属性时

是否可以以某种方式以编程方式构建属性 key ?例如grailsApplication.config.myapp. + somethingVar.toString()

最佳答案

Groovy 允许您使用 GString 表达式进行属性访问,因此

grailsApplication.config.myapp."${somethingVar}"
只要 somethingVar 不包含任何点,

就会执行您想要的操作。如果您有一个包含整个配置键(包括点)的变量,那么您可以使用 flatConfig:

def key = "myapp.something"
def value = grailsApplication.flatConfig."${key}"

或者如果变量是“路径”的一部分而不是整个路径:

def key = "some.thing"
def value = grailsApplication.flatConfig."myapp.${key}" // gives myapp.some.thing
<小时/>

或者您可以通过使用 inject 的技巧来避免 flatConfig

def key = "some.thing"
def value = key.split(/\./).inject(grailsApplication.config.myapp) { co, part ->
co."${part}"
}

inject 方法为我们要迭代的数组中的每个项目调用一次闭包,每次都会传入上次迭代返回的值(我将其称为 co ,因为它将是一个 ConfigObject)和本次迭代的值(part)。 inject 的总体结果是上次迭代返回的值。

关于grails - 是否可以以编程方式构建 grails 配置属性键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20078363/

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