我对这样的字段进行了限制:
import javax.validation.constraints.Pattern;
@Pattern(regexp=SOME_REGEX)
private String someField;
正则表达式工作正常,但在无效值的情况下,将记录该值:
[Field error in object 'containingSomeField' on field 'someField': rejected value [InvalidValue123];
有没有办法禁用此登录注释?到目前为止,我还没有找到任何东西。
我一般不想禁用日志记录,只是打印这个值。屏蔽该值就足够了。
编辑:
找到了我自己的问题的答案。您可以覆盖默认异常处理程序:
@ControllerAdvice
public class ResponseExceptionHandler extends ResponseEntityExceptionHandler {
@Override
public final ResponseEntity<Object> handleMethodArgumentNotValid(
MethodArgumentNotValidException ex,
@NonNull HttpHeaders headers,
@NonNull HttpStatus status,
@NonNull WebRequest request
) {
// Your code here
}
}