服务之外的Grails依赖注入?

ska*_*kaz 7 grails spring dependency-injection inversion-of-control

我有一个Grails应用程序需要运行一个可能会随着时间的推移而被换出的策略.我知道Spring是Grails的基础,所以我想知道我是否可以访问Spring的IoC容器,这样我就可以将xml文件中的实际依赖项外部化了(注意:我从来没有真正做过这个,但只知道它,所以我可能是遗漏了什么).我的目标是能够执行以下操作:

class SchemaUpdateService {
public int calculateSomething(){
ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
IStrategy strat = (IStrategy) ctx.getBean("mystrat");
}
}
Run Code Online (Sandbox Code Playgroud)

然后在beans.xml文件中映射相应的实现.我认为Grails支持这一点.有没有人有关于这将如何工作的任何文件?我真的只需要Spring IoC库吗?它会起作用吗?谢谢!

hvg*_*des 5

您可以在resources.xml或中定义bean resources.groovy.grails 文档非常清楚如何访问Spring应用程序上下文.