Как показать все доступные маршруты в Spring?

Как показать все маршруты, отображаемые в приложении spring? В Rails это выполняется с использованием маршрутов рейка.

Я использую два метода отображения spring для создания URL-сопоставлений:

  • @RequestMapping
  • SimpleUrlHandler

Я использовал команду Unix grep и cut, чтобы получить все сопоставления @RequestMapping. Интересно, есть ли способ получить эти данные из приложения spring.

Ответ 1

Если вы устанавливаете категорию Log4J для log4j.logger.org.springframework.web на INFO или DEBUG, вы должны увидеть список сопоставлений в журнале вашего сервера (например, catalina.out), когда ваше приложение запустится.

Например:

INFO: DefaultAnnotationHandlerMapping: Mapped URL path [/about] onto handler [[email protected]47]
INFO: DefaultAnnotationHandlerMapping: Mapped URL path [/about.*] onto handler [[email protected]47]
INFO: DefaultAnnotationHandlerMapping: Mapped URL path [/about/] onto handler [[email protected]47]
...
INFO: SimpleUrlHandlerMapping: Mapped URL path [/login] onto handler [[email protected]35acf6]

Ответ 2

Если вы используете Intellij (окончательная версия), то после создания/запуска проекта вы можете просмотреть маршруты в нижней панели инструментов RunEndpointsMappings.

введите описание изображения здесь