此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Boot 3.3.1! |
此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Boot 3.3.1! |
只要类路径上有 JSR-303 实现(比如 Hibernate 验证器),Bean Validation 1.1 支持的方法验证功能就会自动启用。
这允许对 Bean 方法的参数和/或返回值进行注释。
具有此类批注方法的目标类需要在类型级别使用批注进行批注,以便搜索其方法以查找内联约束批注。jakarta.validation
@Validated
例如,以下服务触发第一个参数的验证,确保其大小介于 8 和 10 之间:
-
Java
-
Kotlin
import jakarta.validation.constraints.Size;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
@Service
@Validated
public class MyBean {
public Archive findByCodeAndAuthor(@Size(min = 8, max = 10) String code, Author author) {
return ...
}
}
import jakarta.validation.constraints.Size
import org.springframework.stereotype.Service
import org.springframework.validation.annotation.Validated
@Service
@Validated
class MyBean {
fun findByCodeAndAuthor(code: @Size(min = 8, max = 10) String?, author: Author?): Archive? {
return null
}
}
在约束消息中解析时,使用应用程序。
这允许您将应用程序的 messages.properties
文件用于 Bean 验证消息。
解析参数后,将使用 Bean Validation 的默认插值器完成消息插值。MessageSource
{parameters}
要自定义用于构建 的 ,请定义一个 bean。
当定义了多个定制器 Bean 时,将根据它们的注释或实现按顺序调用它们。Configuration
ValidatorFactory
ValidationConfigurationCustomizer
@Order
Ordered