在grails中使用服务的最佳方式是什么?

时间:2011-01-13 09:48:10

标签: grails groovy dependency-injection

我刚刚开始了一个关于grails的项目,但没有找到如何使用依赖注入和接口来处理服务。

正如我在创建服务时在文档中看到的那样 - 它只是一个groovy类,可以随时随地自动连接。

但是,如果我想拥有一个服务接口并注入其中一个实现,就像我在Java中使用spring那样做了什么呢?

例如我想要一个服务界面。让它成为MyService.groovy 它将有1个方法doSmth() 我将有2个实现 - MyServiceImpl1.groovy和MyServiceImpl2.groovy

我有一个石英工作做这样的事情 def myService myService.doSmth()

我应该在哪里放置groovy界面(文件夹)?我可以在src / groovy中为它创建一个包吗? 如何配置resources.groovy将“myService”连接到1个服务实现?

感谢任何想法

提前致谢!

2 个答案:

答案 0 :(得分:12)

运行grails create-service [name]是部署服务的便捷方式,但它并不像您正在寻找的那样创建一个带有实现的接口。

我建议将您的界面和实现放入src/groovy并使用resources.groovy连接它们(如果您希望按环境部署不同的实现,则可以访问环境)。

请参阅chapter 14.2 of the user guide中的“使用Spring DSL”部分,了解如何在resources.groovy中连接您的服务。如果你想与XML连接,你也可以选择使用resources.xml,但我绝对推荐使用Groovy DSL。

答案 1 :(得分:0)

只需运行grails create-service [name]