java - 如何订购 Bean 验证
问题描述
我创建了一个验证注释来验证字符串的内容。我的注释的定义如下所示:
@NotNull
@Size(min = 2, max = 128, groups = First.class)
@Pattern(regexp = "^(?!WP_([0-9])+$)[A-Z_][A-Z0-9_-]+", groups = Second.class)
@Target({FIELD, ANNOTATION_TYPE})
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {})
@GroupSequence(value={First.class, Second.class})
public @interface ValidIntentName {
String message() default "";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
我的问题是我无法订购@Size和@Pattern执行。我已经尝试了几件事,但到目前为止没有运气。
基本上我需要在@Pattern 之前执行@Size
定义了第一和第二接口。编译期间没有错误只是在运行时@Patter 在@Size 之前执行。
知道我做错了什么吗?
我正在运行 Java 8。
谢谢
解决方案
推荐阅读
- list - 如何在 SAPUI 中禁用 ListItem
- json - 我在 Swift 5 上解码 json 时出错
- php - 你如何销毁 2 行,laravel 中的每个表中的一个?
- android - Kotlin 编译器优化?
- python - Pyqt5如何每5分钟运行一次脚本或运行脚本以检查网络中的线程
- react-native - 如何找出在本机反应中可见的flatlist最后一项
- spring - 在分布式环境中获取访问令牌
- javascript - Nuxtjs 抛出“不要在突变处理程序之外改变 vuex 存储状态”
- kotlin - 无法编译颤振应用程序 - Kotlin 相关错误
- ngrx - Effect 调度了一个无效的动作 - 动作必须是对象