Avatar ·

Unterschied zwischen @Component, @Repository und @Service im Spring Framework

Hallo zusammen! Ich bin ein Java-Anfänger und lerne das Spring Framework. Ich schreibe meine erste Anwendung – einen einfachen Online-Shop. Ich habe mehrere Klassen: ProductService, ProductRepository und ProductController. Ich weiß, dass sie alle Spring-Beans sein müssen, verstehe aber nicht, welche Annotation ich für welche Klasse verwenden soll. Überall steht, dass man einfach @Component auf alles setzen kann, aber ich habe gesehen, dass erfahrene Entwickler @Repository für die DAO-Schicht und @Service für Services verwenden. Was ist der Unterschied? Ich habe es so versucht: ```java @Component public class ProductRepository { public List findAll() { // hier Arbeit mit der DB } } @Service public class ProductService { @Autowired private ProductRepository repository; } @Controller public class ProductContr