我在哪里可以定义grails 4.0.1中grails.util.Holders.config的输入
在Grails2.0中,我可以在Config.groovy中定义列表,并通过grails.util.Holders.Config访问它们 Grails4.0.1中的相应功能是什么 签出配置类: 根据官方文件: Grails支持每环境配置的概念。这个我在哪里可以定义grails 4.0.1中grails.util.Holders.config的输入,grails,Grails,在Grails2.0中,我可以在Config.groovy中定义列表,并通过grails.util.Holders.Config访问它们 Grails4.0.1中的相应功能是什么 签出配置类: 根据官方文件: Grails支持每环境配置的概念。这个 grails-app/conf中的application.yml和application.groovy文件 目录可以使用YAML或 ConfigSlurper提供的语法 签出配置类: 根据官方文件: Grails支持每环境配置的概念。这个 grail
grails-app/conf中的application.yml
和application.groovy
文件
目录可以使用YAML或
ConfigSlurper提供的语法
签出配置类:
根据官方文件:
Grails支持每环境配置的概念。这个
grails-app/conf中的application.yml
和application.groovy
文件
目录可以使用YAML或
ConfigSlurper提供的语法
只需在.yml末尾添加2行
registrierungsstati:[beantragt,位于阿内尔坎特普吕丰]
qualitätsnachweise:[技术工、学士、硕士、博士、晋升]
只需在.yml末尾添加两行即可
registrierungsstati:[beantragt,位于阿内尔坎特普吕丰]
qualitätsnachweise:[技术工、学士、硕士、文凭、晋升]
更正:
List getQualitätsnachweise () {
GrailsApplication grailsApplication = Holders.grailsApplication
grailsApplication.config.getProperty('qualitätsnachweise')
}
}
grailsApplication在这两种情况下都必须使用Holders进行初始化。grailsApplication中也存在相同的错误
顺便说一下,在域类中使用getter生成列表不是一个好主意,因为hibernate遇到了麻烦,因为hibernate将getter作为数据库字段。所以我用
static List qualitaetsnachweise ()
而不是
静态列表getQualitaetsnachweise()
注意:
grailsApplication.config.getProperty('qualitaetsnachweise')
不是以列表的形式出现,而是以逗号分隔的字符串形式出现,您必须通过
。拆分(“,”).toList()更正:
List getQualitätsnachweise () {
GrailsApplication grailsApplication = Holders.grailsApplication
grailsApplication.config.getProperty('qualitätsnachweise')
}
}
grailsApplication在这两种情况下都必须使用Holders进行初始化。grailsApplication中也存在相同的错误
顺便说一下,在域类中使用getter生成列表不是一个好主意,因为hibernate遇到了麻烦,因为hibernate将getter作为数据库字段。所以我用
static List qualitaetsnachweise ()
而不是
静态列表getQualitaetsnachweise()
注意:
grailsApplication.config.getProperty('qualitaetsnachweise')
不是以列表的形式出现,而是以逗号分隔的字符串形式出现,您必须通过
。拆分(',')。toList()
在Grails2.0中,我可以在Config.groovy中定义列表并访问它们
通过grails.util.Holders.config
最好的答案取决于了解有关从何处访问值的上下文,但一般来说,不应该使用Holders.config
(在Grails2、3和4中也是如此)。您可以选择让DI容器为您注入值的列表
请参阅上的项目
我希望这有帮助
在Grails2.0中,我可以在Config.groovy中定义列表并访问它们
通过grails.util.Holders.config
最好的答案取决于了解有关从何处访问值的上下文,但一般来说,不应该使用Holders.config
(在Grails2、3和4中也是如此)。您可以选择让DI容器为您注入值的列表
请参阅上的项目
我希望这能有所帮助。对不起,我不懂.yml语法。在配置中。grails 2的groovy我只写了一行kommunikationsart=['Festnetz'、'Handy'、'Fax'、'eMail'、'Homepage']并将其作为Holders.config.kommunikationsart在我的domainclass中的一个列表。现在我的简单问题是:对应的.yml行是什么?如何从我的域类访问它?很抱歉,我不理解.yml语法。在配置中。grails 2的groovy我只写了一行kommunikationsart=['Festnetz'、'Handy'、'Fax'、'eMail'、'Homepage']并将其作为Holders.config.kommunikationsart在我的domainclass中的一个列表。我现在的简单问题是:对应的.yml行是什么?如何从我的域类访问它?这是一个坏主意。编写代码的方式,grailsApplication.config
将导致NullPointerException
,因为您尚未初始化本地grailsApplication-grailsApplication
变量。即使你解决了这个问题,这也不是一个好方法。更好的办法是让DI容器将配置值注入到类中,而不是让类去获取配置值。这是个坏主意。编写代码的方式,grailsApplication.config
将导致NullPointerException
,因为您尚未初始化本地grailsApplication-grailsApplication
变量。即使你解决了这个问题,这也不是一个好方法。更好的办法是让DI容器将配置值注入到类中,而不是让类去获取配置值。这看起来像是按照预期的方式工作。static List qualitaetsnachweise()
-您确实不应该在域类中使用static
方法来检索配置值。在任何用例中,这都不是最好的方法。”而且要小心:grailsApplication.config.getProperty('qualitaetsnachweise')不是列表形式的…””-如果您真的想引用config.getProperty
,应该使用接受类型作为参数的重载版本。例如,grailsApplication.config.getProperty('qualitaetsnachweise',List,[])
“同样的错误也存在”-我无法使用我在那篇文章中提到的方法生成错误。
package user3647093configlist
import org.springframework.beans.factory.annotation.Value
class BootStrap {
@Value('${music.drummers}')
List<String> drummerNames
def init = { servletContext ->
println 'Drummers:'
for(String name : drummerNames) {
println "\t$name"
}
}
def destroy = {
}
}
Drummers:
Neil Peart
Mike Portnoy
Bill Bruford
Carl Palmer