Sự khác biệt giữa @Inject
và @Autowired
trong Spring Framework là gì? Khi nào nên sử dụng chúng?
Sự khác biệt giữa @Inject
và @Autowired
trong Spring Framework là gì? Khi nào nên sử dụng chúng?
Trong Spring Framework, @Inject
và @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
@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.@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
.@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
@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.middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào