Встречается на 2% собеседований по Java

Как работает Router в Java

В Java роутер (Router) обычно реализуется для маршрутизации HTTP-запросов в веб-приложениях. Основные подходы:

  1. Сервлеты + аннотации (Jakarta EE / Spring):
java
@WebServlet("/users")
public class UserServlet extends HttpServlet {
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) {
        // Обработка GET /users
    }
}
  1. Фреймворки типа Spring MVC:
java
@RestController
@RequestMapping("/api")
public class UserController {
    @GetMapping("/users/{id}")
    public User getUser(@PathVariable Long id) {
        // ...
    }
}
  1. Самописные решения (для простых случаев):
java
Map<String, BiConsumer<HttpRequest, HttpResponse>> routes = new HashMap<>();
routes.put("GET /users", this::handleGetUsers);

// В обработчике запроса:
String key = request.getMethod() + " " + request.getPath();
routes.getOrDefault(key, this::notFound).accept(request, response);

Ключевые принципы:

  • Сопоставление URL и HTTP-методов с обработчиками
  • Поддержка параметров пути (/users/{id})
  • Возможность фильтрации запросов (middleware)
  • Обработка ошибок маршрутизации (404)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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