public interface Person{
void speak();
}
@Service("student")
public class Studet implements person{
@Override
public void speak(){
System.out.println("I want work");
}
}
@Service("worker")
public class Worker implements person{
@Override
public void speak(){
System.out.println("I like study");
}
}
@Component
public class PersonFactory{
@Autowired
Map<String, Person> personMap;
public Person getPerson(String personType){
return personMap.get(personType);
}
}
@SpringBootTest
@RunWith(SpringRunner.class)
public class TestClass{
@Autowired
PersonFactory personFactory;
@Test
public void test(){
Person worker = personFactory.getPerson("worker");
worker.speak();
}
}
输出:I like study
例子很简单,完全裸手敲,有问题欢迎指出,也希望对你有所帮助,感谢您能看到这里!哈哈哈~