@NotBlank 没有message
时间: 2024-09-25 15:16:06 浏览: 37
`@NotBlank` 是Spring Boot Validation注解库中的一个验证规则,用于检查字段是否为空,即非空值。默认情况下,如果验证失败,它会提供一个预定义的消息,例如 "field must not be blank"。如果你发现`@NotBlank` 没有自定义消息,这通常意味着你没有显式地设置 `message` 属性或使用了默认的行为。
要在`@NotBlank`上添加自定义错误信息,你可以这样做:
```java
import javax.validation.constraintsNotBlank;
import javax.validation.ConstraintValidatorContext;
public class CustomNotBlankConstraint implements ConstraintValidator<NotBlank, String> {
private String message = "请输入有效内容";
@Override
public void initialize(NotBlank annotation) {
// 初始化在这里可以设置默认或自定义消息
}
@Override
public boolean isValid(String value, ConstraintValidatorContext context) {
if (value != null && !value.trim().isEmpty()) {
return true;
}
context.disableDefaultConstraintViolation();
context.buildConstraintViolationWithTemplate(message).addConstraintViolation();
return false;
}
}
```
然后在需要验证的地方使用这个自定义约束:
```java
class MyObject {
@CustomNotBlank(message = "custom message")
private String myField;
}
```
如果没有显式设置`message`属性,那么默认的Spring Boot验证消息就会被显示。
阅读全文