【问题标题】:Can I use BeanValidation on annotations themselves?我可以在注释本身上使用 BeanValidation 吗?
【发布时间】:2015-12-31 03:35:53
【问题描述】:

我正在开发一个注释处理器并开始好奇。

像这样注释并在注释处理器中验证是否有意义?

@Retention(value = RUNTIME)
@Target(value = {FIELD, METHOD, PARAMETER})
public @interface BitProperty {

    @Min(1)
    @Max(31)
    int scale() default 31;
}

【问题讨论】:

    标签: java annotations bean-validation annotation-processing


    【解决方案1】:

    我什至不确定这应该怎么做?你的期望是什么?当注解处理器运行时,您希望发生验证并且带有无效参数值的注解(例如scale > 31)抛出一个约束冲突异常,这反过来又会中止注解处理?

    这里最大的问题是注解处理器不处理Annotation 实例,而是处理AnnotationMirrowjavax.lang.model.element 包中的其他类。 Bean Validation 和 Hibernate Validator 不是为使用这个反射 API 而设计的。所以,不,它不会起作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-17
      • 2020-12-15
      • 2010-09-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多