Bird
0
0

Which of the following is the correct way to inject ApplicationEventPublisher in a Spring Boot component?

easy📝 Syntax Q12 of 15
Spring Boot - Advanced Patterns
Which of the following is the correct way to inject ApplicationEventPublisher in a Spring Boot component?
A@Autowired private ApplicationEventPublisher publisher;
Bprivate ApplicationEventPublisher publisher = new ApplicationEventPublisher();
C@Inject ApplicationEventPublisher publisher = null;
DApplicationEventPublisher publisher = ApplicationEventPublisher.getInstance();
Step-by-Step Solution
Solution:
  1. Step 1: Recall Spring dependency injection syntax

    Spring uses @Autowired to inject beans automatically into components.
  2. Step 2: Check each option for correctness

    @Autowired private ApplicationEventPublisher publisher; uses @Autowired correctly. private ApplicationEventPublisher publisher = new ApplicationEventPublisher(); tries to instantiate interface (not allowed). @Inject ApplicationEventPublisher publisher = null; mixes @Inject with assignment (not typical in Spring). ApplicationEventPublisher publisher = ApplicationEventPublisher.getInstance(); uses a non-existent getInstance method.
  3. Final Answer:

    @Autowired private ApplicationEventPublisher publisher; -> Option A
  4. Quick Check:

    @Autowired injects beans properly [OK]
Quick Trick: Use @Autowired for Spring bean injection [OK]
Common Mistakes:
  • Trying to instantiate ApplicationEventPublisher directly
  • Mixing injection annotations incorrectly
  • Using static getInstance() which doesn't exist

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Spring Boot Quizzes