2016-10-11 3 views
0

Я пытаюсь проанализировать объект в JSON String и проверить JSON перед отправкой. Использование тега Spring @Valid, чтобы убедиться, что JSON действителен на основе параметров, указанных в определении объекта. Тем не менее, я вижу, что проверки повторений полей в JSON нет. Есть ли тег для управления повторением полей?Проверка структуры JSON объекта с использованием Spring

Объект:

public class Test { 

    @Size(min=2, max=30) @NotNull 
    private String name; 

    @NotEmpty @Email 
    private String email; 

    @NotNull @Min(13) @Max(110) 
    private Integer age; 

    @Size(min=10) 
    private String phone; 

    @NotNull 
    private Gender gender; 
} 

Вызов:

public void putTest(..., @RequestBody @Valid Test test,...) 

К сожалению, принимает тестовый объект в следующем формате:

{Name: "Test", Email: "[email protected]", age: 20, **Gender: "M", Gender:"F"**} 

ответ

0

если ваш JSON пост правильно, у вас есть проблемы название полей

См.:

{Name: "Test", Email: "[email protected]", age: 20, **Gender: "M", Gender:"F"**} 

первые буквы свойств в верхнем регистре.

, когда решение для этого, карта свойства же

import com.fasterxml.jackson.annotation.JsonProperty; 


public class Test { 

    @Size(min=2, max=30) @NotNull 
    @JsonProperty("Name") 
    private String name; 

    @NotEmpty @Email 
    @JsonProperty("Email") 
    private String email; 

    @NotNull @Min(13) @Max(110) 
    @JsonProperty("Age") 
    private Integer age; 

    @Size(min=10) 
    @JsonProperty("Phone") 
    private String phone; 

    @NotNull 
    @JsonProperty("Gender") 
    private Gender gender; 
} 
Смежные вопросы