Después de la pregunta Comprender el uso de Spring @Autowired, quería crear una base de conocimientos completa para la otra opción de cableado de resorte, la @Configuration
clase.
Supongamos que tengo un archivo XML de primavera que se ve así:
<?xml version="1.0" encoding="UTF-8"?>
<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">
<import resource="another-application-context.xml"/>
<bean id="someBean" class="stack.overflow.spring.configuration.SomeClassImpl">
<constructor-arg value="${some.interesting.property}" />
</bean>
<bean id="anotherBean" class="stack.overflow.spring.configuration.AnotherClassImpl">
<constructor-arg ref="someBean"/>
<constructor-arg ref="beanFromSomewhereElse"/>
</bean>
</beans>
¿Cómo puedo usar @Configuration
en su lugar? ¿Tiene algún efecto sobre el código en sí?
@Component
@Service
u otras anotaciones similares se convertirán automáticamente en un bean (pero ese no fue el enfoque de esta pregunta)