Я новичок в Spring Boot и хочу отправить запрос стороннему API. У меня есть следующие параметры записи в JSON, которые будут использоваться как @ RequestBody ;
{"startDate": "2015-07-01", "endDate": "2015- 10-01 "," userId ": 1," type ": 1,}
ИЛИ
{" startDate ":" 2015-07-01 ", "endDate": "2015-10-01"}
public class ReportRequest {
@NotNull
private String startDate;
@NotNull
private String endDate;
private int userId;
private int type;
//getters and setters
Я использовал @ JsonInclude (JsonInclude.Include.NON_EMPTY на уровне класса и поля. Я также пытался NON_NULL для игнорирования 'userId' и 'type', но они все еще есть в объекте @RequestBody.
@PostMapping(value="/getData", produces = "application/json")
public ResponseEntity getReport(@Valid @RequestBody ReportRequest reportRequest){
Нет проблем при отправке запроса со всеми свойствами JSON Однако, когда я просто отправляю обязательные данные, «userId» и «type» автоматически устанавливаются на 0.
Я знаю, что использование Необязательный не лучшая практика. Не удалось найти способ создания объекта запроса с 2 необязательными данными запроса JSON. Спасибо.