我能够从 Config.groovy 定义服务 bean 的属性。
引用书 Grails 2 权威指南
清单 10-6。使用 Config.groovy 配置 Bean
beans {
albumArtService {
artworkRequestUrl = 'http://itunes...'
}
}
这种方法的一个优点是,由于 Config.groovy 提供的功能,您可以轻松地指定每个环境的值,而不是将值硬编码到 AlbumtArtService 类中。使用该配置代码,可以从 AlbumArtService 类中删除硬编码值。该属性仍需要声明为类中的字段,但不应分配值。框架将负责使用 Config.groovy 中指定的值初始化属性
在 Grails 2 中,我已经定义了服务 bean 的属性,如上所述。
现在在 Grails 3 中,我尝试在 application.ml 文件中定义服务属性:
environments:
development:
beans:
transactionalMailService:
mandrillApiKey: XAPIKEYVALUEX
shareWithShoptimixUseCaseService:
appStore: https://itunes/myapp
grails:
serverURL: http://localhost:8080
dataSource:
driverClassName: org.postgresql.Driver
dialect: org.hibernate.dialect.PostgreSQL9Dial
....
...
..
.
然后在我的服务中:
class TransactionalMailService {
def mandrillApiKey
....
...
..
.
}
该属性没有被设置。知道如何在 Grails 3 中执行此操作吗?