使用接口java返回的类中的方法(spring bean)

时间:2017-04-05 20:06:11

标签: java spring maven spring-mvc

我有一个控制器,可以调用这样的接口:

class controllerA{
    @Autowired
    public iService interfaceService;

    public void methodController(){
        String param1 = new String("example1");
        String param2 = new String("example2");
        this.interfaceService.getServiceA().methodA(param1,param2);
    }
}

好吧,我的界面是:

public interface iService {
    Class<T> getServiceA();
}

实施:

public class iServiceImpl implements iService {

    @Autowired      
    private ApplicationContext appContext;

    public class<T> getServiceA(){
        return appContext.getType("serviceA").cast(appContext.getBean("serviceA"));
    }
}

applicationContext-service.xml(1):(已修复)

<bean id="iServiceFacade" class="service.facade.iServiceImpl"/>

<bean id="serviceA" class="service.postgres.ServiceA"/>

applicationContext-service.xml(2)改变了这个:

<bean id="serviceA" class="service.oracle.ServiceA"/>

这些xml在编译时使用maven配置文件进行更改。

我的问题是,无法在控制器上调用serviceA.methodA(param1,param2),并且我使用不同的配置进行探测。

上下文正确地注入了bean,但是我如何调用控制器上的服务方法?

在serviceA上实现的接口其他接口上无法返回,因为该服务具有静态方法...

谢谢!

0 个答案:

没有答案