Kotlin + Spring Boot + @Valid неработающий внутренний объект дочернего объекта - PullRequest
1 голос
/ 10 июля 2020

Вот код:

data class Father(
        @Valid
        val sonExamResult: Son.ExamResult
)

data class Son(
        val examResult:ExamResult
){
    data class ExamResult(
            @field: Size(min = 0, max = 100)
            val math:Int,
            @field: Size(min = 0, max = 100)
            val physicalEducation:Int
    )
}

Как я могу проверить структуру данных, подобную приведенной выше? Я пытаюсь передать -1 на ExamResult.math, но ничего не происходит.

Мой родной язык не английский sh, мне очень жаль слова error.

Спасибо за вашу помощь!

1 Ответ

1 голос
/ 14 июля 2020

@Size используется для списков и других коллекций, где параметры min и max ограничивают его размер. Вам необходимо использовать @Max и @Min и класс данных

data class Father(
    @field:Valid
    val sonExamResult: Son.ExamResult

)

data class Son(
    val examResult:ExamResult) { data class ExamResult(
        @field:Min(0)
        @field:Max(100)
        val math:Int,
        @field:Min(0)
        @field:Max(100)
        val physicalEducation:Int
)}

см. Также: kotlin и аннотацию @Valid Spring

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...