Projets
Pages enfant
  • 1.7 Les beans Spring

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Bloc de code
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
	http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">

Récupération des beans

Lorsque l'on veut Il est possible de récupérer un bean à partir de son nom , il faut obligatoirement utiliser la à partir du code JAVA.. La classe BeanUtils fournie par esup-commons. V1 n'est plus utilisée.

On utilise un mécanisme interne à Spring basé sur l'implémentation de org.springframework.context.ApplicationContextAware

esup-commons V2 fournit une telle implémentation qu'il suffit de déclarer dans un fichier de configuration Spring (ex : properties/applicationContext.xml) :

Bloc de code

<bean id="app_context" class="org.esupportail.commons.context.ApplicationContextHolder"/>

Depuis le code javaEn mode batch par exemple, on utilisera :

Bloc de code
ApplicationContext springContext = ApplicationContextHolder.getContext();
DomainService domainService = (DomainService) BeanUtilsspringContext..getBean("domainService");
La classe BeanUtils de esup-commons utilise toujours la même beanFactory (statique), et il ne faut pas créer de nouvelle beanFactory « à la main » (par exemple à partir du fichier de configuration /properties/applicationContext.xml).
Avertissement
  • L'utilisation de BeanUtils cette méthode devrait rester exceptionnelle (mode batch par exemple)