Câu hỏi phỏng vấn Spring
Câu hỏi

Sự khác biệt giữa @Inject@Autowired trong Spring Framework là gì? Khi nào nên sử dụng chúng?

Câu trả lời

Trong Spring Framework, @Inject@Autowired đều là các annotation được sử dụng để tự động chèn (autowire) các phụ thuộc vào các bean Spring. Tuy nhiên, chúng thuộc về hai chuẩn khác nhau và có một số khác biệt nhỏ:

@Autowired

  • Spring-specific: @Autowired là một phần của Spring Framework và không phụ thuộc vào bất kỳ chuẩn nào khác ngoài Spring.
  • Flexible: @Autowired có thêm tính năng như required attribute, cho phép bạn đánh dấu một phụ thuộc không bắt buộc phải tồn tại, tức là có thể là null.
  • By Type Autowiring: Mặc định, @Autowired thực hiện autowiring bằng cách tìm kiếm bean có kiểu dữ liệu phù hợp trong context của Spring.

@Inject

  • JSR-330 Standard: @Inject là một phần của Java Specification Request (JSR) 330, là một chuẩn cho dependency injection trong Java. Nó không phụ thuộc vào Spring và có thể được sử dụng trong các container DI khác.
  • **Less Flexi...
middle

middle

Gợi ý câu hỏi phỏng vấn

senior

Spring WebFlux là gì?

middle

WebClientWebTestClient trong Spring để làm gì?

middle

Sự khác biệt giữa @RequestParam@PathVariable trong Spring là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào