Estoy usando Spring desde hace unos meses, y pensé que la inyección de dependencia con la anotación @Autowired también requería un setter para el campo para inyectar.Inyección de dependencia de primavera @Autocableado sin setter
Por lo tanto, lo estoy usando como esto:
@Controller
public class MyController {
@Autowired
MyService injectedService;
public void setMyService(MyService injectedService) {
this.injectedService = injectedService;
}
...
}
Pero he intentado esto hoy:
@Controller
public class MyController {
@Autowired
MyService injectedService;
...
}
Y, oh sorpresa, sin errores de compilación, no hay errores en el inicio, la aplicación funciona perfectamente ...
Así que mi pregunta es, ¿el setter es requerido para la inyección de dependencia con la anotación @Autowired?
Estoy usando Spring 3.1.1.
Parece que ha respondido a su propia pregunta. – darrengorman