Trung BìnhJava iconJava

@Component, @Service, @Repository và @Controller khác nhau thế nào?

Tất cả đều là stereotype annotation kích hoạt component scanning và tạo Spring bean. @Component: generic, đánh dấu class là Spring bean. @Controller: chuyên biệt cho web controller xử lý HTTP request. @Service: chuyên biệt cho business logic layer. @Repository: chuyên biệt cho data access, tự động dịch database exception sang Spring DataAccessException.

Về mặt kỹ thuật tương đương nhau, nhưng sử dụng đúng annotation giúp code tự tài liệu hóa và rõ ý định thiết kế.

Xem toàn bộ Java cùng filter theo level & chủ đề con.

Mở danh sách Java