Как игнорировать значения POJO только при получении ввода от пользователя, а не при отправке ответа - PullRequest
0 голосов
/ 04 апреля 2019

Требование: я хочу игнорировать чтение нескольких параметров из пользовательского ввода (JSON), но я хочу включить те же параметры в ответ. В настоящее время у меня есть текущий код, который игнорируется как при получении, так и при отправке.

То есть, при чтении пользовательского ввода пропускается Order Id, Order Status и т. Д., И при отправке ответа JSON не будет иметь Order Id, Order Status. Я хочу пропустить при чтении и включить при отправке ответа.

@JsonIgnoreProperties(ignoreUnknown = true, value = { "Order Id", "Order Status", "Created Date", "Last Modified" })
public class OrderDTO implements Serializable {


@JsonProperty("Order Id") 
private Long orderId;
@JsonProperty("Address")
AddressDTO addressDto;

@JsonProperty("Order Status")
private String status;
@JsonProperty(value = "Customer Id") 
@Size(min = 3, message = "Customer Id Should Be Greater Than 3 Characters")
@NotNull(message = "Customer Id Should Not Be Null.")
private String userId;

Ваши усилия будут высоко оценены. Спасибо.

1 Ответ

1 голос
/ 04 апреля 2019

Начиная с версии 2.6: более интуитивно понятный способ - использовать аннотацию com.fasterxml.jackson.annotation.JsonProperty на поле. Попробуйте добавить

@JsonProperty(access = Access.READ_ONLY)
private Long orderId;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...