问题描述:

项目前后台添加了防止XSS的攻击的转码后,在使用@Length注解验证长度的时候,在输入内容长度为临界值并且输入内容包含某些特殊字符(如:’<'被转码为‘&lt;’)时报超长,所以这里重写了@Length注解的验证方式


解决方案:

1、打开@Length注解的源码:如下图所示:

重写@Valid 注解@Length 的验证方式
2、新建注解
重写@Valid 注解@Length 的验证方式
3、复制1中的源码至2中新建的注解,因为这里只验证字符串,所有新创建的注解删除list相关的验证,如下图
重写@Valid 注解@Length 的验证方式

4、创建4中的验证类,并编写代码如下所示:
重写@Valid 注解@Length 的验证方式
5、在实体类的属性上使用我们新创建的注解,与@Length的使用方式一样,如下图:
重写@Valid 注解@Length 的验证方式
6、不要忘记在实体类上添加@Valid注解,否则属性上的注解回不起作用。

相关文章:

  • 2021-07-08
  • 2022-12-23
  • 2021-08-10
  • 2022-03-02
  • 2021-05-25
  • 2022-12-23
  • 2021-08-25
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-11-17
  • 2021-10-28
  • 2022-01-06
  • 2021-04-28
  • 2022-12-23
相关资源
相似解决方案