Para escrever uma @interfaceclasse, uso ValidValue como exemplo aqui.
Os três seguintes são exigidos JSR303pelos regulamentos
// 校验不通过时返回的错误信息
String message()default"The specified value must be submitted";// 在需要多个校验规则的时候可以指定是哪个组的校验规则
Class<?>[]groups()default{
};//
Class<?extendsPayload>[]payload()default{
};
As regras definidas são as regras que int[] vals() default {};você deseja usar para verificação. Isso significa que o número inserido deve estar na matriz.
O exemplo completo é o seguinte ( se você não sabe o que as anotações na aula usam, você pode apenas clicar em uma anotação de verificação e copiá-la )
O ValidValueConstraintValidatorvalidador interno (descrito abaixo) precisa ser vinculado às suas anotações de validação
{
// 这里就是你自定义的默认返回错误"showStatus":"The specified value must be submitted",}
5. Como personalizar a mensagem de erro retornada
Nos comentários fornecidos pelo pacote jar, suas mensagens de erro são todas colocadas no pacote jar, que pode ser visto por ValidationMessages.propertiespesquisa global ValidationMessages.
Por exemplo
javax.validation.constraints.AssertFalse.message = must be false
javax.validation.constraints.AssertTrue.message = must be true
javax.validation.constraints.DecimalMax.message = must be less than ${
inclusive ==true?'or equal to ':''}{
value}
javax.validation.constraints.DecimalMin.message = must be greater than ${
inclusive ==true?'or equal to ':''}{
value}
javax.validation.constraints.Digits.message = numeric value out of bounds (<{
integer} digits>.<{
fraction} digits> expected)
javax.validation.constraints.Email.message = must be a well-formed email address
javax.validation.constraints.Future.message = must be a future date
javax.validation.constraints.FutureOrPresent.message = must be a date in the present or in the future
javax.validation.constraints.Max.message = must be less than or equal to {
value}
javax.validation.constraints.Min.message = must be greater than or equal to {
value}
javax.validation.constraints.Negative.message = must be less than 0
javax.validation.constraints.NegativeOrZero.message = must be less than or equal to 0
javax.validation.constraints.NotBlank.message = must not be blank
javax.validation.constraints.NotEmpty.message = must not be empty
javax.validation.constraints.NotNull.message = must not be null
Então, nós mesmos escrevemos um ValidationMessages.propertiesarquivo e o colocamos no diretório de recursos
com.study.common.valid.ValidValue.messageÉ a sua anotação personalizada mais.message