Вы можете добавить свой собственный контроллер, который будет использовать вашу службу.
Например, домен Booking
и BookingRepository
.
Обратите внимание, что если вы поместите @RequestMapping(path = "bookings")
в Контроллер, все конечные точки, предоставляемые Spring Data REST, будут переопределены и недоступны. Поэтому поместите в методе @RequestMapping
и его вариации, такие как @PutMapping
.
Если метод контроллера имеет @PostMapping("bookings")
, то конечная точка POST
, предоставляемая Spring Data REST, будет заменена этим настраиваемым метод контроллера.
@RepositoryRestController
public class BookingController {
private final BookingService bookingService;
@PostMapping("/bookings")
public ResponseEntity create(@RequestBody Booking booking) {
...
}
}
Если метод контроллера имеет другой путь сопоставления запросов, то все конечные точки, предоставляемые Spring Data REST, сохраняются.
@RepositoryRestController
public class BookingController {
private final BookingService bookingService;
@PutMapping("/bookings/{id}/confirm")
public ResponseEntity confirm(@PathVariable String id) {
...
}
}
Вы можете найти полный код моего BookingController
на Github