A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Inyecci贸n de dependencia "Component"

11/31
Recursos

Aportes 14

Preguntas 29

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Tambi茅n funciona inyectar una dependencia con solo la instancia de la interfaz y agreg谩ndole las anotaciones pertinentes, sin tener que usar un m茅todo constructor:

@Autowired
	@Qualifier("componentTwoImplement")
	private ComponentDependency componentDependency;

En la versi贸n 2.6.3 de Spring, se puede agregar la etiqueta @Primary a la implementaci贸n que queramos utilizar, y esta se tomar谩 como la principal.

Gracias por la clase. Personalmente, me gusta el Autowired porque no tengo que inferir que esta pasando mientras leo el codigo. Siento que a medida que crece el repositorio, lo hace mas legible.

No me marco el error del final pero igual agregue la anotacion de 鈥淍Qualifier鈥 y funciono como en el video, aun que algunas personas en los comentarios dice que puedes usar @Primary

@Autowired es muy imporante al momento de autocablear nuestras soluciones, es cierto que hoy dia no es tan recomendada para nuestros proyectos, pero la verdad la idea es hacer el c贸digo menos verboso y esto simplifica much铆simo el c贸digo fuente.
Por otra parte, @Qualifier: es una anotaci贸n que sirve para especificar el tipo de dependencia se esta inyectando con la funcionalidad de diferenciar nuestras abstracciones o uso de clases que implementan una misma interfaz (Seg煤n el principio SOLID) porque si usamos concreciones no seria util usar Qualifiers en la mayor铆a de los casos.

Lo que veo redundante es que al hacer un contructor directamante estamos inyectando la dependencia, no es que Spring lo haga automaticamante sin colocar la anotacion @Autowired, en caso de que no iniciemos la dependencia con algun metodo constructor si o si debemos usar @Autowired ya que es la manera como spring nos ayuda a inyectar esa dependencia.

Hola si usan Lombok, pueden poner esta anotaci贸n sin necesidad de usar crear el constructor

@SpringBootApplication
**@RequiredArgsConstructor**
public class FundamentosApplication implements CommandRunner {

	private final ComponentDependency componentDependency;
...........
...........
...........

}

M谩s de Lombok:
https://projectlombok.org/features/constructor
https://projectlombok.org/features/all

Otra opci贸n que pueden usar es poner el nombre de la dependencia que desean usar en la variable que crean y en el constructor y ya spring sabe que bean usar

private ComponentDependency componentTwoImplement;

	public FundamentosApplication(ComponentDependency componentTwoImplement){
		this.componentTwoImplement = componentTwoImplement;
	}

	public static void main(String[] args) {
		SpringApplication.run(FundamentosApplication.class, args);
	}

	@Override
	public void run(String... args) throws Exception {
		componentTwoImplement.saludar();
	}

En windows, si quieres agregar el constructor de forma mas sencilla, despues de declarar ComponentDependency presiona la combinaci贸n de teclas Alt + insert, te aparacer谩 un recuadro y seleccionas 鈥榗onstructor鈥, enseguida se mostrar谩 otro recuadro con los campos que puedes agregar al constructor, en este caso solo aparecer谩 el de componentDependency, lo seleccionas, le das enter y listo!! el constructor se genera autom谩ticamente.

En este caso prefiero youtube
https://www.youtube.com/watch?v=7vHzVN0EiQc

Lo 煤nico que no me gusta del curso es que siento que Michael hace las cosas como al rev茅s y eso puede confundir un poco a las personas, es decir, primero implementa una interface y despu茅s la crea y as铆 con otras cosas鈥

Entender esta clase es entender Spring, que buena explicaci贸n

Esta parte me pareci贸 super confusa reci茅n empec茅 con spring, este tipo lo explico soberbio

Uy, no sabia que el @autowired ahora es opcional