RangeFloatValidator.java 782 B

12345678910111213141516171819202122232425262728
  1. package com.backendsys.entity.validator;
  2. import jakarta.validation.ConstraintValidator;
  3. import jakarta.validation.ConstraintValidatorContext;
  4. import java.util.Arrays;
  5. import java.util.List;
  6. /**
  7. * 自定义注解 (逻辑实现)
  8. */
  9. public class RangeFloatValidator implements ConstraintValidator<RangeFloat, Float> {
  10. private double min;
  11. private double max;
  12. @Override
  13. public void initialize(RangeFloat constrainAnnotation) {
  14. min = constrainAnnotation.min();
  15. max = constrainAnnotation.max();
  16. }
  17. @Override
  18. public boolean isValid(Float validValue, ConstraintValidatorContext constraintValidatorContext) {
  19. if (validValue == null || validValue == 0) { return true; }
  20. return validValue >= min && validValue <= max;
  21. }
  22. }