如问题所述,在常规来源中使用grails服务的最佳方法是什么?我目前正在使用此代码:
private RoleService roleService;
public RoleCommand() {
this.roleService = (RoleService) Holders.getGrailsApplication().getMainContext().getBean("roleService");
}
有一个更好的方法吗?
编辑/解决方案:
我使用Spring Dependency Injection解决了它(用@Component注释类,并使用Application.groovy文件中的@ComponentScan注释注册包)
最佳答案
您的代码可能更普通:
import grails.util.Holders
class RoleCommand {
// getter for the service
def getRoleService() {
Holders.grailsApplication.mainContext.getBean 'roleService'
// or Holders.applicationContext.getBean 'roleService'
}
def useTheService() {
// use the getter method
def something = roleService.doSomething()
}
}
关于grails - 在Groovy Source文件夹中使用Grails 3服务的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52426927/