package com.nmrbt.uc.common.validator; import javax.validation.Constraint; import javax.validation.Payload; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Target(ElementType.FIELD) @Retention(RetentionPolicy.RUNTIME) @Constraint(validatedBy = LongitueValidator.class) public @interface Longitue { String message() default "longitude is error please input right str"; Class<?>[] groups() default {}; Class<? extends Payload>[] payload() default {}; }
package com.nmrbt.uc.common.validator; import org.apache.commons.lang3.StringUtils; import javax.validation.ConstraintValidator; import javax.validation.ConstraintValidatorContext; public class LongitueValidator implements ConstraintValidator<Longitue,String> { @Override public void initialize(Longitue annotation) { System.out.println(" LongitueValidator init ...."); } @Override public boolean isValid(String o, ConstraintValidatorContext constraintValidatorContext) { if(StringUtils.isEmpty(o)) { return true; } try { Double aDouble = Double.valueOf(o); return true; }catch (Exception e){ return false; } } }