добро пожаловать в переполнение стека.
API-интерфейсы Rest работают так:
- Вы предоставляете конечную точку и глагол (например, GET at / Students)
- Какой-то клиент вызывает вашу конечную точку (делает вызов серверу, на котором хранится ваше приложение)
- Ваш сервер делегирует вызов функции контроллера (например, функции с
@GetMapping("/students")
) - Функция контроллера отправляет ответ клиенту (С помощью Spring ваш метод возвращает объект или ResponseEntity)
API REST получают запросы, обрабатывают указанный запрос (и запрашивают данные, если они есть) и типично возвращают некоторые данныес кодом состояния, который указывает, была ли операция успешной.
С помощью Spring вы делаете что-то вроде этого:
@GetMapping("/students")
ResponseEntity<List<Student>> listStudents() {
List<Student> stds = getStudents(); // call some service or DB
return new ResponseEntity<>(stds, HttpStatus.OK);
}
Когда вы делаете запрос GET для / студентов, Spring делегирует обработкузапроса к методу listStudents, который будет получать студентов и возвращать данные.
API REST обычно работают с JSON, поэтому список студентоввозвращение будет сериализовано в список json.
Если вы хотите настроить структуру json учащегося, вы можете использовать Jackson:
public class Student {
@JsonProperty("cool_name") private String name;
// getters and setter
}
API остальных не работает с представлениями или JSP.Они обычно работают с http-запросами и ответами.
Если вы работаете с Spring MVC вместо Spring Boot, проверьте эту статью: https://viralpatel.net/blogs/spring-4-mvc-rest-example-json/
Если вы можете использовать Spring Boot (который яНастоятельно рекомендуем), проверьте это: https://spring.io/guides/gs/rest-service/
Вы также должны аннотировать свои контроллеры REST с помощью @RestController
, чтобы они автоматически обрабатывали вызовы покоя.
Надеюсь, что это помогает и приветствуется переполнение стека