接线豆基于属性文件
问题描述:
答
在以前的项目中,我们根据环境变量对bean使用不同的类。我们从服务接口开始,根据命名约定找到我们想要使用的实现类,如下面的代码片段所示。
与您的代码的唯一区别是我们使用服务接口的类加载器来检索实现类。另一种选择是grailsApplication.config.foo.bar不包含正确的值。
在的grails-app/conf目录/弹簧目录我们的豆文件包含下面的代码加载正确的实现类:
beans = {
addressService(getImplementation(AddressService))
appointmentService(getImplementation(AppointmentService))
}
def getImplementation(Class service) {
if (CH.config.mockAllServices == 'true' || CH.config."mock${service.simpleName}" == 'true') {
return service.classLoader.loadClass(service.name + 'Mock')
}
return service.classLoader.loadClass(service.name + 'Impl')
}
我有同样的关注和此页帮我:HTTP://博客.lidalia.org.uk/2010/06 /注入豆成 - Grails的-controller.html – JLBarros 2012-04-10 17:40:23