Sobes.tech
Middle

Koja je razlika između anotacija Component, Repository i Service u Spring-u?

sobes.tech АИ

Одговор од АИ

Sve ove anotacije su specijalizovane @Component. One se koriste za automatsko prepoznavanje Spring komponenti putem skeniranja classpath-a.

Glavne razlike su u semantici i planiranoj upotrebi:

  • @Component: Opšta stereotipna anotacija za bilo koju Spring komponentu. Može se koristiti za klase koje ne spadaju u specifičnije kategorije.
  • @Repository: Označava klasu koja obavlja ulogu skladišta podataka. Spring automatski konvertuje izuzetke specifične za pristup podacima u ujedinjenu hijerarhiju izuzetaka Spring-a za klase sa ovom anotacijom.
  • @Service: Označava klasu u sloju servisa aplikacije. Obično sadrži poslovnu logiku aplikacije. Koristi se za poboljšanje čitljivosti koda i bolju strukturu aplikacije.
Anotacija Svrha Semantika
@Component Opšti Spring komponent Opšti, univerzalni
@Repository Skladište podataka Pristup podacima, DAO
@Service Sloj usluga, poslovna logika Poslovna logika, servis