как показать формат HAL для списка сущностей - PullRequest
0 голосов
/ 25 октября 2019

У меня есть список сущностей, которые восстановлены моим контроллером, и я хочу отправить их как список сущностей ресурсов, но я получаю ненужные нулевые атрибуты, которые мне не нужны, есть ли способ удалить их в списке,хотя это работает для одной сущности.

моя сущность:

 @Data
 @NoArgsConstructor
 @JsonIgnoreProperties(ignoreUnknown = true)
 @JsonInclude(Include.NON_NULL)
 public class EntityDTO extends ResourceSupport {
 private String one;

      // rest of the values 
 }

контроллер:

@RequestMapping(method = RequestMethod.GET, produces = MediaTypes.HAL_JSON_VALUE, path = "/all")
public ResponseEntity<Entity> getAllEntity(){

         // lot of validations
  List<Entity> entityList = entityUseCase.getAllEntity();
        // it access the database to get all entity
  return ResponseEntity.status(HttpStatus.OK).body((entityList));
}

но ответ я получаю:

[
    {
        "one" : "someValue"
        "links": [
            {
                "rel": "self",
                "href": "http://127.0.0.1:9797/start/id/0020299421",
                "hreflang": null,
                "media": null,
                "title": null,
                "type": null,
                "deprecation": null
            },
            {
                "rel": "DELETE",
                "href": "http://127.0.0.1:9797/start/id/0020299421",
                "hreflang": null,
                "media": null,
                "title": null,
                "type": null,
                "deprecation": null
            },
            {
                "rel": "DELETE",
                "href": "http://127.0.0.1:9797/start/uuid/d48363e7-d365-405e-82ed-c73a2aa39fe3",
                "hreflang": null,
                "media": null,
                "title": null,
                "type": null,
                "deprecation": null
            }
        ]
    }
]

но когда я попытался получить только одно значение, я получил HAL-совместимость

{
     "one":"someValue"
    "_links": {
        "self": {
            "href": "http://127.0.0.1:9797/start/one"
        },
        "GET": [
            {
                "href": "http://127.0.0.1:9797/start/id/390"
            },
            {
                "href": "http://127.0.0.1:9797/start/name?name=someName"
            },
            {
                "href": "http://127.0.0.1:9797/start/all"
            }
        ],
        "DELETE": [
            {
                "href": "http://127.0.0.1:9797/start/id/390"
            },
            {
                "href": "http://127.0.0.1:9797/start/id?id=34"
            }
        ]
    }
}

, любая помощь будет очень признательна.

...