Ce billet a pour but de répondre à des problématiques simples et récurrentes que l'on peut rencontrer lorsque l'on utilise le framework Spring. N'hésitez pas à en poster d'autres, je les ajouterai à la liste.
Comment déclarer un bean de type String ?
<bean id="foo.string" class="java.lang.String"> <constructor-arg value="foo"/> </bean>
Comment déclarer une valeur d'enum ?
<bean id="foo.enum.value" class="foo.enum.FooEnum" factory-method="valueOf"> <constructor-arg> <value>FOO</value> </constructor-arg> </bean>
Comment injecter des valeurs statiques ?
<bean id="foo.service" class="foo.service.impl.FooServiceImpl"> <property name="emptyList"> <bean id="java.util.Collections.EMPTY_LIST" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"/> </property> </bean>
La liste statique EMPTY_LIST de la classe java.util.Collections sera injectée dans l'attribut emptyList du bean foo.service
Merci pour ce rappel.
Pour info, sur le site developpez il y a aussi cette FAQ que j’utilise quand j’ai un trou de mémoire.