开发者社区 问答 正文

接口怎么在spring中动态调用,解耦

我有一个通信接口IComminicate,

具体的实现方法分别有SocketCommunicate 和 WebServiceCommunicate,

类的实例化由spring管理

问题是我在调用类XXAction里面,采用spring的方法

@Resource private Icommunicate socketCommunicate;

那这样不是还是耦合没解开,要是要用webServiceComunicate,Action里面要改成@Resource private Icommunicate webServiceComunicate;

有没有什么办法解耦这?

展开
收起
a123456678 2016-03-17 15:49:08 2650 分享 版权
1 条回答
写回答
取消 提交回答
  • 你可以使用一个代理.注入的是resource这个代理, 由代理判断传入的action类型产生你需要的ICommunicate. 这个代理本身可以采用楼上的方法单独做一个factorybean接口只根据条件生产相应的ICommunicate.

    2019-07-17 19:05:33
    赞同 展开评论
问答分类:
问答标签:
问答地址: