Лучший способ вернуть 2 объекта внутри тела ответа в Spring - PullRequest
0 голосов
/ 03 августа 2020

Я хочу отправить 2 объекта (экземпляры 2 разных классов) внутри тела запроса POST, обработать информацию и отправить обратно обновленные объекты в ответ. Как лучше всего это сделать? Я знаю, что могу поместить объекты на карту или создать объект-оболочку, но, вероятно, есть более изящный способ добиться этого.

Пример тела запроса:

{
  "object1": {
    "data1": "val1",
    "data2": "val2"
  },
  "object2": {
    "dataN": "valN"
  }
}

Пример тела ответа:

{
  "object1": {
    "data1": "updatedVal1",
    "data2": "val2"
  },
  "object2": {
    "dataN": "updatedValN"
  }
}

1 Ответ

2 голосов
/ 03 августа 2020

Нет, нет удобного способа отправки двух java объектов. Использование POJO достаточно изящно. Нет ничего плохого в том, чтобы иметь много POJO, которые представляют определенные c вещи. Использование POJO - лучший способ, чем использование Map, поскольку оно обеспечивает безопасность типов. И если вы используете библиотеку lombok, вы можете исключить весь шаблонный код, чтобы ваш POJO был красивым и маленьким:

@Data
public class TwoResponse {
  private OneType object1;
  private TwoType object2;
}
...