sirve relacionar que qualifier por para otro metodo medio inyección inyecciones habilita etiqueta español dependencias dependencia configuración con como bean anotaciones java spring spring-mvc

java - relacionar - para que sirve spring



¿Cómo se inyecta un bean en una clase @Controller? (1)

@Autowired private YourService yourServiceBean;

(También puedes usar @Inject )

Por supuesto, YourService debe declararse como un bean, ya sea en applicationContext.xml o mediante anotaciones (por ejemplo, @Service )

Si desea inyectar propiedades de cadena, puede usar la anotación @Value :

@Value("${propName}") private String str;

(Para eso necesitarás un PropertyPlaceholderConfigurer )

Soy algo nuevo en Spring (usando 3.0), así que espero que haya una respuesta simple. Si tengo un controlador que está anotado con @Controller y @RequestMapping y quiero establecer una propiedad mediante la inyección de dependencia, ¿cómo hago para hacerlo? La clase de controlador no tiene que aparecer en el archivo de configuración de Spring porque se selecciona automáticamente debido a la anotación de @Controller .

Ejemplo de clase de controlador:

package gov.wi.dnr.wh.web.spring; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller public class RehabHomeController { private String xxx; @RequestMapping(value="/rehab/home", method = RequestMethod.GET) public String get() { return "whdb.rehabhome"; } public String getXxx() { return xxx; } public void setXxx(String xxx) { this.xxx = xxx; } }

Configuración de la primavera:

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp"/> </bean> <context:component-scan base-package="gov.wi.dnr.wh.web.spring"/> <mvc:annotation-driven /> </beans>

Esto funciona como está, pero me gustaría inyectar la propiedad "xxx". ¿Cómo hago para hacer eso?