实现防sql注入的特殊字符切面过滤拦截
不使用过滤器、spring拦截器原因:
1、http输入流不能重复读取,需要重写HttpServletRequest的相关方法,将http输入流第一次读取的数据缓存起来。
2、基于尽可能少修改原代码进行扩展的原则,避免修改代码引发的未知风险。
package com.to8to.tbt.aoc.interceptor;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.to8to.sc.compatible.RPCException;
import com.to8to.sc.response.ResUtils;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.regex.Pattern;
/**
* @作者:fandy.lin
* @描述:特殊字符过滤拦截器:
* @时间:2020-10-10 16:11
**/
@Aspect
@Component
@Slf4j
public class