java - 如何使用 hibernate validator 检查枚举中的值是否可用

标签 java

如何检查枚举中的值是否可用?

例如,我有以下枚举,其中包含以下 2 个数据

public enum DeliveryMethodEnum {
    IMMEDIATE(1), 
    SCHEDULED(2);

    private Integer deliveryMethod;

    private DeliveryMethodEnum(Integer deliveryMethod) {
        this.deliveryMethod = deliveryMethod;
    }

    public Integer getDeliveryMethod() {
        return deliveryMethod;
    }
}

1. IMMEDIATE(1)
2. SCHEDULED(2)

我需要验证属于上述枚举的请求参数值。 在请求参数中我们将传递 1/2/3..

如果我们传递 1 或 2,那么它就会通过,因为枚举中数据可用,否则它将失败。

请求参数如下

{
    "deliveryMethod": 1
}

如何使用hibernate validator 实现上述目标?

最佳答案

您可以创建自定义 validator 。

您必须创建一个可在参数上使用的注释,然后需要实现 validator 本身。

请查看官方文档:https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/#validator-customconstraints-simple

关于java - 如何使用 hibernate validator 检查枚举中的值是否可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56808321/

相关文章:

java - JSP/Servlet 和 PHP 页面之间的通信?

java - 在 Apache Spark 中,我可以轻松地重复/嵌套 SparkContext.parallelize 吗?

java - 在 java 计划执行程序服务中处理 sleep

java - 在 Spring 中使用加密的属性文件

java - 改进 Java 代码,使其在 Android 上执行得更快

Java:在 catch block 内抛出异常

java - Apache Spark : Importing jars

java - 了解 java.lang.String s = new String ("hello") 和 String hold = "hello"之间的区别

java - 动态向 Activity 添加 View 时出现错误

java - 通用 Comparable 出现编译器错误