В моем сервисном проекте RESTful у меня есть метод, добавляющий запись (новый человек):
В контроллере:
@PostMapping(value = "/addPerson")
public Response dodajOsobe(InputStream inputStream) {
return osMgr.dodajOsobe(inputStream);
}
В сервисе:
public Response dodajOsobe(InputStream inputStream) {
Response response = null;
try {
String input = misc.InputStreamToString(inputStream);
Integer id = dodajOsobe(input);
response = Response.ok("New person added").build();
} catch (Exception e) {
response = Response.serverError().entity("Nie udało się dodać osoby. Przyczyna: " + e.getLocalizedMessage()).build();
}
return response;
}
Возвращает объект "Ответ" со статусом OK, если все в порядке:
response = Response.ok("New person added").build();
После выполнения результат в браузере выглядит так:
{
"statusType": "OK",
"entity": "New person added",
"entityType": "java.lang.String",
"metadata": {},
"status": 200
}
Я хочу вернуть идентификатор человека. Я знаю, что могу сделать это в «сущности», но я хочу иметь там перерабатываемую информацию. Есть поле «метаданные», и я не буду помещать туда идентификатор записи, например:
{
"statusType": "OK",
"entity": "New person added",
"entityType": "java.lang.String",
"metadata": {"id":112233},
"status": 200
}
Как это сделать??