zoukankan      html  css  js  c++  java
  • 基于mybatisPlus的特殊字符校验

    要实现以下代码前提是导入Mybatis-plus的jar:

    * @author WENGKAIBO505
     */
    @Target({ElementType.FIELD, ElementType.METHOD})
    @Retention(RetentionPolicy.RUNTIME)
    @Constraint(validatedBy=SpecialFieldValidator.class)
    public @interface SpecialField {
    
        String message() default "不能包含特殊字符";
    
        Class<?>[] groups() default {};
    
        Class<? extends Payload>[] payload() default {};
    ackage com.paic.ocss.gateway.model.validator;
    
    import javax.validation.ConstraintValidator;
    import javax.validation.ConstraintValidatorContext;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    /**
     * @author WENGKAIBO505
     */
    public class SpecialFieldValidator implements ConstraintValidator<SpecialField, String> {
    
    
        /**
    
         * 特殊字符的正则表达式
    
        */
    
       private String reg = "[_`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]|\n|\r|\t";
    
       private Pattern pt = Pattern.compile(reg);
    
       @Override
    
       public void initialize(SpecialField specialField) {
    
          // TODO
        Auto-generated method stub
    
       }
    
    @Override
    
    public boolean isValid(String value, ConstraintValidatorContext arg1) {
    
          if (value == null) {
             return true;
    
          }
    
          Matcher m = pt.matcher(value);
    
          if (m.find()) {
    
             return false;
          }
    
          return true;
    
       }
    
    }
  • 相关阅读:
    【USACO18JAN】MooTube G
    【JSOI2008】星球大战
    【ECF#87】小结
    【NOIP2013】火柴排队
    【USACO04OPEN】MooFest G
    【NOI OL #2】T3 游戏
    【NOI OL #2】T2 子序列问题
    简单NLT
    python中的位运算
    列表和元组
  • 原文地址:https://www.cnblogs.com/leeego-123/p/10937130.html
Copyright © 2011-2022 走看看