Встречается на собеседованиях • сегодня

Где используется паттерн chain of responsibility в Spring Boot

В Spring Boot паттерн Chain of Responsibility часто применяется в фильтрах (Filter), интерцепторах (HandlerInterceptor) и механизмах безопасности (SecurityFilterChain).

Пример с фильтрами:

java
@Component
@Order(1)
public class LogFilter implements Filter {
    @Override
    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) 
        throws IOException, ServletException {
        System.out.println("Logging request");
        chain.doFilter(req, res); // передача следующему фильтру
    }
}

@Component
@Order(2)
public class AuthFilter implements Filter {
@Override
public void doFilter(...) {
if (!isAuthenticated(req)) throw new SecurityException();
chain.doFilter(req, res); // вызов следующего фильтра/контроллера
}
}

text

Каждый фильтр обрабатывает запрос и передает его дальше по цепочке через `FilterChain`. Аналогично работают `HandlerInterceptor` в MVC и `SecurityFilterChain` в Spring Security.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы