Как вы находите свой путь вокруг кодовой базы Spring? - PullRequest
3 голосов
/ 10 июня 2019

Я попал в положение, когда бэкэнд был весной, и у меня возникли проблемы.В Django, Flask, Rails, Express.js и т. Д. Есть файлы маршрутов, в которых вы можете найти объявления различных URL-адресов, для которых настроены ответы сервера, и найти путь оттуда.У Spring, похоже, этого нет… везде есть файлы с аннотациями, которые превращают различные классы в конечные точки.

Как вы находите способ обойти или формируете какую-то мысленную концептуализацию структуры кодовой базы

Ответы [ 2 ]

3 голосов
/ 10 июня 2019

Вот несколько советов общего назначения:

  • Java IDE великолепны, используйте их широко.Они могут помочь во многих случаях.Все они поддерживают приложения весенней загрузки.Таким образом, вы можете открыть, скажем, pom.xml файл, и он загрузит проект.

  • Все остальные контроллеры обычно снабжены аннотацией @RestController

  • Если вы считаете, что @RestController является слишком общим, и вам нужно что-то гораздо более детальное в вашем проекте, рассмотрите возможность использования Spring Feature, называемой «аннотации стерео типа».Короче говоря, вы можете определить свою собственную аннотацию (например, @MyOwnVeryCustomProjectController), которая сама будет помечена как @RestController, так что Spring boot будет обрабатывать классы, аннотированные этой пользовательской аннотацией, так же, как Rest Controllers (вы также можете установить любой параметр с помощьюразумные значения по умолчанию с этим методом).

  • Если вы используете конфигурации Java в отличие от чисто декларативного подхода с аннотациями и компонентным сканированием, то вы можете проверить, существуют ли классы @Configuration, которые агрегируютопределения бина для всех контроллеров.

  • Используйте Spring Actuator в сервисах Spring Boot.Короче говоря, он предоставляет некоторые конечные точки HTTP любому процессу весенней загрузки.Среди других (довольно полезных) конечных точек есть конечная точка mappings, в которой отображается список всех путей @RequestMapping во время выполнения.

1 голос
/ 10 июня 2019

Попробуйте найти класс, помеченный аннотацией @RestController. Этот класс будет служить контроллером для пути в @RequestMapping("/student") с несколькими URL / конечными точками, помеченными одной из одних аннотаций:

@RequestMapping("delete")
@PostMapping("/create")
@GetMapping("/list")
@DeleteMapping("{id}")
@PutMapping("{id}")

Аналогично, может быть несколько контроллеров, каждый из которых имеет несколько конечных точек.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...