根据docs,GrailsApplicationAware
界面是
可以通过插件注册的类实现的便捷界面。
因此可能实现此接口的Spring bean可以使用它来获取GrailsApplication
的实例。但其他对象是否可以为同一目的实现此接口?
插件注册的类
答案 0 :(得分:4)
它的工作方式与ApplicationContextAware
等标准Spring接口相同 - 任何bean(无论是隐式注册为人工制品还是在resources.xml
,resources.groovy
或插件doWithSpring
中明确注册的实现接口的方法将由框架自动调用其setGrailsApplication(GrailsApplication ga)
方法,而无需将其明确命名为属性或启用自动装配。
对于设置为自动装配的bean(例如Grails服务),您不需要实现GrailsApplicationAware
,您只需要提供setGrailsApplication
方法(Groovy属性定义{{ 1}}将为您创建)并且它将被自动装配,因为def grailsApplication
被注册为名为GrailsApplication
的bean。或者你当然可以明确注入bean
grailsApplication