LearnThatStack Ace your next interview
Spring Boot · question
Question 4 of 72

What is the difference between @Component, @Service, @Repository, and @Controller?

beginner
← All Spring Boot questions
Re-explain

All four mark a class as a Spring bean that component scanning picks up. They are stereotype annotations, and @Service, @Repository and @Controller are specializations of @Component that also name the layer the class belongs to.

  • @Component is the generic stereotype for any Spring-managed class.
  • @Service marks business logic in the service layer.
  • @Repository marks data access. It also turns on exception translation, which converts database-specific exceptions into Spring's DataAccessException hierarchy.
  • @Controller marks the presentation layer. Spring MVC treats these classes as handlers for HTTP requests.
@Service
public class UserService { }
@Repository
public class UserRepository { }
@Controller
public class UserController { }

For component scanning, the four behave the same. The specific annotation still matters, because tools and aspects can target a layer by its annotation. Spring may also give these annotations more behavior in future versions, so use the one that matches the role of the class.

Rewriting in plainer words…

This answer doesn't lend itself to a diagram - it reads best . No credits were charged.

Why there's no diagram: “”

The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓

The diagram below the answer is the concept . Jump to it ↓

Tailored explanation · switch back to · ·
What should the new diagram focus on?
How well did you know this?
AI:

Saved in this browser - sign in to keep your review list.

How should your speech become text?

Listening… your words appear above as you speak - tap Stop when you're done.

Recording · cr - tap Stop & transcribe when you're done.

Transcribing with AI…

Voice:

Keep going - a few more words and AI can grade it.

Interview lens

Likely follow-ups, what you can say, and the weak answers to avoid.

Sign in free to open it Free account - the lens opens as soon as you're back.

Want a quick review of the fundamentals? See the Spring Boot cheatsheet.

← Back to all Spring Boot questions
Pro · $10/mo

62 of 72 Spring Boot answers are in Pro.

Full answers, code samples, and AI explanations that go simpler or deeper. Cancel anytime.

  • Full answers + code
  • AI explanations, simpler or deeper
  • 1,000 AI credits / month
  • Cancel anytime