Spring Boot

Spring MVC Basics

Spring MVC, kiến trúc MVC, DispatcherServlet, @Controller, ViewResolver, mẫu Model-View-Controller

20 câu hỏi phỏng vấn·
Mid-Level
1

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.

2

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.

3

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.

4

Làm thế nào để lấy một biến path từ một URL như /users/{id}?

5

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

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í