Injection de dépendance et test
Bonjour,
Je débute avec Spring, pour le moment j'ai une classe Manager et une classe Plugin. Ma classe plugin utilise mon manager.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
@Component
public class MyPlugin {
@Autowired
@Qualifier("default")
private IManager manager;
public MyPlugin() {
}
public void sayHello() {
this.manager.sayHello();
}
public IManager getManager() {
return this.manager;
}
public void setManager(final IManager manager) {
this.manager = manager;
}
} |
Code:
1 2 3 4 5 6 7 8 9
|
@Service
@Qualifier("default")
public class MyManager implements IManager {
public void sayHello() {
System.out.println("Hello From MyManager !!!");
}
} |
Je configure Spring dans mon main :
Code:
1 2 3 4 5 6
|
public static void main(final String[] args) {
final ApplicationContext context = new AnnotationConfigApplicationContext(MyApplication.class);
final MyPlugin plugin = context.getBean(MyPlugin.class);
plugin.sayHello();
} |
La classe MyApplication ne fait rien de particulier.
Ce que je voudrais c'est trouver un moyen pour que dans un test par exemple, MyPlugin utilise une classe OtherManager:
Code:
1 2 3 4 5 6 7 8
|
@Service
public class OtherManager implements IManager {
public void sayHello() {
System.out.println("Hello From OtherManager!!!");
}
} |
Je ne sais pas comment faire. Sans changer dans le code le :
Code:
1 2 3
|
@Autowired
@Qualifier("default") |
Merci d'avance pour votre aide,
Virginie