攻击 SQL 阻断解析器

作用!阻止恶意的全表更新删除

  1. @Bean
  2. public PaginationInterceptor paginationInterceptor() {
  3. PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
  4. ...
  5. List<ISqlParser> sqlParserList = new ArrayList<>();
  6. // 攻击 SQL 阻断解析器、加入解析链
  7. sqlParserList.add(new BlockAttackSqlParser() {
  8. @Override
  9. public void processDelete(Delete delete) {
  10. // 如果你想自定义做点什么,可以重写父类方法像这样子
  11. if ("user".equals(delete.getTable().getName())) {
  12. // 自定义跳过某个表,其他关联表可以调用 delete.getTables() 判断
  13. return ;
  14. }
  15. super.processDelete(delete);
  16. }
  17. });
  18. paginationInterceptor.setSqlParserList(sqlParserList);
  19. ...
  20. return paginationInterceptor;
  21. }