2014-11-21 149 views
0

我想在運行時的依賴關係之間切換。排除依賴關係的類

僞代碼:

//use com.realdependency.ConnectionFactoryImpl; 
    Class A { 
      // intergration test 
     void testWithLiveDomain() { 
      Connection connection = ConnectionFactory.getInstance().getConnection(domain); 
     } 

    } 

// use com.mymockeddependency.ConnectionFactoryImpl; 
class B { 
    // unit test 
    void testWithMockDomain() { 
     Connection connection = ConnectionFactory.getInstance().getConnection(domain); 
    } 
} 

如果我在我的pom.xml都依賴關係,我的B類是用真正的依賴性,而不是嘲笑之一。如何限制B類使用嘲弄的依賴關係

回答

1

這是完美的依賴注入候選者。 如果這是網絡應用程序,或者您可以添加其他庫如Spring或任何類型的DI容器(PicoContainer?),您可以利用它們在運行時選擇依賴項。

嘗試使用谷歌搜索「java @Alternative註釋」。