将外部化的Groovy DSL Spring bean配置导入Grails resources.groovy

时间:2014-12-03 02:01:44

标签: spring grails

我有一个Grails应用程序,在我的resources.groovy文件中配置了Spring bean。我想知道是否可以从文件系统上的外部源导入我的bean配置,但仍然保持它们的Groovy DSL风格。

我知道可以从XML文件导入bean配置,详见本文" Is it possible to import an external bean configuration xml file into resources.groovy?"但想知道如何使用Groovy DSL bean配置。

1 个答案:

答案 0 :(得分:11)

使用Groovy DSL看起来可能与导入Spring XML配置文件的方式非常相似。

This post对如何实现它有很好的解释。

只需将外部spring配置导入resources.groovy文件,如下所示:

beans = {
    importBeans('file:grails-app/conf/spring/common.xml')
    importBeans('file:grails-app/conf/spring/job-definitions.xml')
    importBeans('file:grails-app/conf/spring/integration.groovy')
    // ...
}

然后您的integration.groovy文件看起来应该是这样的。

beans {
    myBean(MyBean) { bean ->
        property1 = 123
        property2 = "abc"
    }
}

请注意,在导入的弹簧文件中,=后面没有beans符号,这一点非常重要。如果指定beans = { ..... },则不会导入您的bean。