2015-10-23 32 views
2

根据grails的spring文档(https://grails.github.io/grails-doc/3.0.3/guide/spring.html#propertyPlaceholderConfiguration),我试图访问我的一些属性,这些属性是在一个外部.yml文件(fe database.user)中定义的在resources.groovy文件中。在grails3 resources.groovy中访问属性占位符

我试过如下:

def username = "${grailsApplication.config.dataSource.username}" 

这个属性被定义以下方式application.yml内部:

dataSource: 
    username: ${database.username} 

这种配置工作无处不在里面grails3除了resources.groovy。

有什么方法可以访问已解析的属性吗?或者是否有另一种在grails中定义自定义连接池的方式3我不知道?

Regards

回答

2

好吧,我找到了解决我的问题。

内application.yml占位符$ {} database.username有下列方式进行定义:

database: 
    username: ${database.username} 

而且里面resources.groovy的:

def username = "${grailsApplication.config.database.username}" 

然后一切正常。

希望这可以帮助别人谁绊倒这个问题。