JAVA 一個接口多個實現類


JAVA接口 TestInterface 有兩個實現類 TestInterfaceImpl1TestInterfaceImpl2
接口TestInterface:

public interface TestInterface {
    void test1();
}

實現類TestInterfaceImpl1:

@Service("t1")
public class TestInterfaceImpl1 implements TestInterface {
  @Override 
  public void test1() {
    System.out.println("實現類1test1");
  } 
  public void test2(){
    System.out.println("實現類1test2");
  } 
}

實現類TestInterfaceImpl2:

@Service("t2") 
public class TestInterfaceImpl2 implements TestInterface { 
@Override 
  public void test1() { 
    System.out.println("實現類2test1");
  } 
  public void test2(){
    System.out.println("實現類2test2"); 
  } 
}

調用方式:
1.通過 @Autowired@Qualifier 配合注入

@Autowired
@Qualifier("testInterfaceImpl1")
TestInterface testInterface;

2.使用 @Resource 注入,根據默認類名區分

@Resource(name = "testInterfaceImpl1")
TestInterface testInterface;

3.使用 @Resource 注入,根據 @Service 指定的名稱區分

@Resource(name = "t1")
TestInterface testInterface;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM