This is an old revision of the document!
Les fonctionnalités de Spring sont multiples : complément d’hibernate pour l’accès aux données de la BD, mécanisme d’inversion de dépendances, et bien d’autres qui ne sont pas utilisées dans eP-Core. Spring permet donc de spécifier, par le mécanisme d’inversion de dépendance, les objets d’implémentation qui sont utilisés par d’autres Objets.
Ainsi, soit un Objet A :
Class A {
IB myIB ;
public void setMyIB(IB b) {…}
public void myMethod{ //use interface myIB … }
}
Interface IB {
// ….
}
Class B implements IB {
…
}
Class BWithNewTechnolgie implements IB {
…
}
Dans le fichier de configuration de Spring, on spécifie que la propriété myIB de A, qui est typée par une interface, est implémentée par un objet de type B ou BWithNewTechnologie :
<bean id="ib" class="B" ></bean> <bean id="aObj" class="A" > <property name="myIB"><ref bean="ib"/></property> </bean>
Après création des objets (utilisation des constructeurs vide), la méthode setMyIB sera appelée. Par la suite les appels aux différentes méthodes de l’objet aObj, qui utilise myIB pourront être utilisés.