可选的枚举选择-Spring Boot

时间:2018-10-09 07:26:03

标签: spring spring-boot

这是我的卖家课程

    public class Seller {

        private boolean isActive;
        private String name;

//if isActive = true
@NotNull
    @Enumerated
    private ActiveReason reason;

//if isActive = false
@NotNull
    @Enumerated
    private InActiveReason reason2;



    }

这是我的主要实体

public class Book {

    private Seller seller;
    private SavingUnit savingUnit;


}

他们将从服务(UI)中选择枚举。

如果isactive = true,将选择不同的原因。如果为假,则原因不同。

我可以在Seller.class中仅使用一个枚举类和一个变量吗?像

@DependsOnIsActive
private Reason reason

我可以使用验证器,在验证器中,我可以使用类似这样的东西:

public class SellerDesctiptionValidator implements ConstraintValidator<SellerDesctiptionValidator, Book> {

    @Override
    public boolean isValid(Book book, Boolean isActive ConstraintValidatorContext context) {
         return Reason.enum (isActive );
     }    
}

或者您有什么建议?我不必只使用一个枚举和一个变量。两个枚举和两个变量会很容易,但是我想改善自己和代码。

这两个原因activereasoninactivereason没有任何共同之处。它们是完全不同的。

0 个答案:

没有答案