Sto cercando di usare primavera IoC con un'interfaccia simile a questo:primavera CIO e Generic Tipo interfaccia
public interface ISimpleService<T> {
void someOp(T t);
T otherOp();
}
può scaturire fornire CIO in base al tipo di argomento generico T? Insomma, qualcosa di simile:
public class SpringIocTest {
@Autowired
ISimpleService<Long> longSvc;
@Autowired
ISimpleService<String> strSvc;
//...
}
Naturalmente, il mio esempio di cui sopra non funziona:
expected single matching bean but found 2: [serviceLong, serviceString]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessAfterInstantiation(AutowiredAnnotationBeanPostProcessor.java:243)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:957)
mia domanda: è possibile fornire una funzionalità simile con modifiche minime al l'interfaccia o le classi di implementazione? So per esempio che posso usare @Qualifiers, ma voglio mantenere le cose il più semplici possibile.
sembra essere possibile, ora, poiché Spring 4.0. Vedi questo [risposta SO] (http://stackoverflow.com/a/22603321/196533) e l'articolo Spring intitolato [Spring Framework 4.0 e Java Generics] (http://spring.io/blog/2013/12/03/primavera-quadro-4-0-e-java-generici). – chrisjleu