Spring MVC Basics
Spring MVC, kiến trúc MVC, DispatcherServlet, @Controller, ViewResolver, mẫu Model-View-Controller
1Annotation nào biến một lớp Java thành một controller Spring MVC?
Annotation nào biến một lớp Java thành một controller Spring MVC?
Câu trả lời
@Controller đánh dấu một lớp là controller Spring MVC xử lý các yêu cầu HTTP. Đây là một chuyên biệt hóa của @Component và cho phép component scanning tự động phát hiện controller. @RestController kết hợp @Controller và @ResponseBody cho các REST API, trong khi @RequestMapping định nghĩa các ánh xạ URL nhưng tự nó không khai báo một controller.
2Sự khác biệt chính giữa @Controller và @RestController là gì?
Sự khác biệt chính giữa @Controller và @RestController là gì?
Câu trả lời
@RestController kết hợp @Controller và @ResponseBody, nghĩa là tất cả các phương thức tự động trả về dữ liệu được tuần tự hóa (JSON/XML) thay vì tên view. Với @Controller, bạn phải thêm @ResponseBody vào mỗi phương thức để trả về dữ liệu. @RestController được thiết kế cho các REST API, trong khi @Controller được dùng cho các ứng dụng web truyền thống với việc render view.
3Làm thế nào để ánh xạ một phương thức controller tới một yêu cầu HTTP POST trên URL /users?
Làm thế nào để ánh xạ một phương thức controller tới một yêu cầu HTTP POST trên URL /users?
Câu trả lời
@PostMapping là annotation chuyên biệt để ánh xạ một phương thức tới các yêu cầu POST trên một URL cụ thể. Đây là cách viết tắt của @RequestMapping(method = RequestMethod.POST). Các annotation chuyên biệt khác bao gồm @GetMapping, @PutMapping, @DeleteMapping và @PatchMapping. Cách tiếp cận này dễ đọc và súc tích hơn so với @RequestMapping kèm thuộc tính method.
Làm thế nào để lấy một biến path từ một URL như /users/{id}?
Annotation nào được dùng để tự động giải tuần tự hóa JSON từ phần thân yêu cầu HTTP?
+17 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Spring Boot khác
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging với SLF4J và Logback
Spring Boot DevTools
Spring REST Controllers
Request & Response Handling
Xử lý ngoại lệ
Bean Validation
Kiến thức cơ bản về Spring Data JPA
Thực thể JPA & Quan hệ
Truy vấn JPA
Spring Data Repositories
Cơ bản về Spring Security
Spring Boot Actuator
Kiểm thử đơn vị với JUnit & Mockito
Kiểm thử Spring Boot
Profiles và Environment
RestTemplate và WebClient
Async và Scheduling
Caching với Spring
Spring WebFlux (Reactive)
Giao dịch Spring
Xác thực và phân quyền nâng cao
JWT & Bảo mật Stateless
OAuth2 & Authorization Server
Spring Boot và Docker
Microservices với Spring
Spring Cloud Config
Tối ưu hóa hiệu năng
GraalVM Native Images
Nắm vững Spring Boot cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí