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;
    
       }
    
    }
  • 相关阅读:
    EasyUI datagrid动态加载json数据
    Java缓存机制
    爬虫入门 手写一个Java爬虫
    java解决前后台跨域问题
    HttpUrlConnection 基础使用
    聊聊spring-boot-starter-data-redis的配置变更
    Linux命令: 结束命令
    Linux其他: GitBash
    Python: 字典dict: 相同点
    Python: 字典dict: zip()
  • 原文地址:https://www.cnblogs.com/leeego-123/p/10937130.html
Copyright © 2011-2022 走看看