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

Spring MVC Interceptor là gì và cách sử dụng nó như thế nào?

Câu trả lời

Trong Spring MVC, Interceptor là một cơ chế được sử dụng để xử lý các yêu cầu HTTP trước hoặc sau khi chúng được xử lý bởi một controller. Interceptor cung cấp một cách để thêm logic vào chu trình xử lý yêu cầu, giống như các bộ lọc (filters) trong Java Servlet, nhưng với khả năng truy cập vào context của ứng dụng Spring.

Chức năng của Spring MVC Interceptor:

  1. Xử lý trước và sau Controller: Interceptor có thể được sử dụng để thực hiện các thao tác trước khi một yêu cầu đến controller (preHandle) và sau khi controller trả về một view (postHandle).
  2. Xử lý sau khi hoàn thành yêu cầu: Có thể thực hiện logic sau khi yêu cầu đã hoàn tất và view đã được render xong (afterCompletion).
  3. Quản lý ngoại lệ: Interceptor cũng có thể xử lý ngoại lệ xảy ra trong quá trình xử lý yêu cầu.

Cách sử dụng Spring MVC Interceptor:

Để sử dụng một Interceptor trong Spring MVC, bạn cần thực hiện các bước sau:

  1. Tạo một Interceptor: Tạo một lớp mới thực hiện interface HandlerInterceptor hoặc kế thừa lớp HandlerInterceptorAdapter và ghi đè các phương thức preHandle, postHandle, và afterCompletion để thêm logic của bạn.
public class MyInterceptor extends HandlerInterceptorAdapter {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object h...
middle

middle

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

middle

Spring Bean có cung cấp tính an toàn đối với luồng (thread safety) không?

middle

Phạm vi mặc định (default scope) của bean trong framework Spring là gì?

middle

Làm thế nào để xác định phạm vi của một bean trong Spring?

Bình luận

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

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