java 修改 request参数值_修改request请求参数

本质上来讲,request请求当中的参数是无法更改的,也不能添加或者删除;

但在后台程序中,一般对request的参数的操作,都是通过request的getParameter、getParameterNames、getParameterValues等方法执行的;所以我们要是能重写这些方法,就从侧面改变了request的请求参数。恰好,servlet就提供了一个HttpServletRequestWrapper类来供大家去继承(该类是HttpServletRequest的封装类,public class HttpServletRequestWrapper extends ServletRequestWrapper implements

HttpServletRequest{}),重写request相关方法。

修改request参数的整体流程就是:会定义一个拦截器,在请求刚进入项目的时候,拦截住request,处理之后再将其放回。

案例如下:

//@WebFilter(filterName = "paramFilter", urlPatterns = "/*")//拦截器拦截所有请求

//@Order(100)//括号中的数字越大,在多个拦截器的执行顺序越靠前

public class ParamFilter extends OncePerRequestFilter{

@Override

protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws Serv

你可能感兴趣的:(java,修改,request参数值)